# Kako uporabljati MariaDB CREATE TABLE

V MariaDB se za ustvarjanje novih tabel uporablja ukaz `CREATE TABLE`. Da bi zagotovili, da je vsaka tabela v bazi podatkov edinstvena, se lahko uporabita možnosti `OR REPLACE` in `IF NOT EXISTS`, s katerima se izognemo podvajanju in sporočilom o napakah.

## Kaj je `CREATE TABLE` za MariaDB?

Izjava `CREATE TABLE` v MariaDB se uporablja za **ustvarjanje nove tabele**, ki **jo** je mogoče kasneje napolniti s podatki. Kot relacijski sistem za upravljanje podatkovnih baz (DBMS) MariaDB uporablja te tabele kot osnovo za vse operacije shranjevanja. Med ustvarjanjem tabele se opredelijo posamezni stolpci in določijo podatkovni tipi za vsak stolpec. Tabele so edinstvene znotraj novo ustvarjene baze podatkov – [MariaDB CREATE DATABASE](https://www.ionos.com/sl-si/digitalguide/gostovanje/tehnicne-zadeve/mariadb-ustvari-bazo-podatkov/) –, zato bo v primeru, da že obstaja tabela z enakim imenom, prikazano sporočilo o napaki. V naslednjih poglavjih bomo opisali, kako uporabljati ukaz `CREATE TABLE` v MariaDB, in raziskali razpoložljive možnosti, ki jih lahko uporabite.

## Sintaksa in način delovanja

Splošna sintaksa `CREATE TABLE` v MariaDB vedno sledi temu načelu:

```sql
CREATE TABLE Name_of_table(
	Name_of_first_column Data_type_of_first_column,
	Name_of_second_column Data_type_of_second_column
	…
);
```

Za to najprej ustvarite novo tabelo in ji dodajte ime namesto začasnega imena »Name\_of\_table«. Dovoljeni so vsi ASCII-znaki. Nato je treba določiti posamezne stolpce. Vsakemu stolpcu se dodeli **ime in tip podatkov**, ki se lahko shranijo v tem stolpcu. Vsi stolpci so med seboj ločeni z vejicami.

## `OR REPLACE` in `IF NOT EXISTS`

Ker morajo biti tabele edinstvene, boste prejeli sporočilo o napaki **, če že obstaja tabela z enakim imenom**. Da bi se izognili temu problemu, imate dve možnosti: Možnost `OR REPLACE` preveri, ali v bazi podatkov že obstaja tabela z enakim imenom. Če je tako, **se stara tabela nadomesti z novo**. V nasprotnem primeru se nova tabela preprosto ustvari. Sintaksa te izjave je naslednja:

```sql
CREATE OR REPLACE TABLE Name_of_table(
	Name_of_first_column Data_type_of_first_column,
	Name_of_second_column Data_type_of_second_column,
	…
);
```

Upoštevajte pa, da bo stara tabela prepisana in njena vsebina izgubljena. Ta možnost deluje kot skrajšana oblika tega kode:

```sql
DROP TABLE IF EXISTS Name_of_table;
CREATE TABLE Name_of_table (
	Name_of_first_column Data_type_of_first_column,
	Name_of_second_column Data_type_of_second_column
	…
);
```

Drugi način za izogibanje podvajanju ali poznejšim sporočilom o napakah je možnost `IF NOT EXISTS`. Ta preveri, ali v bazi podatkov že obstaja tabela z istim imenom. Če je tako, boste prejeli le obvestilo in **nobena tabela ne bo prepisana**. Če tabele s tem imenom ni, se ustvari nova tabela. Ustrezna sintaksa je naslednja:

```sql
CREATE TABLE IF NOT EXISTS Name_of_table (
	Name_of_first_column Data_type_of_first_column,
	Name_of_second_column Data_type_of_second_column
	…
);
```

## Primer `CREATE TABLE` v MariaDB

Funkcijo `CREATE TABLE` v MariaDB lahko najbolje ponazorimo s preprostim primerom. Ustvarili bomo tabelo za fiktivni seznam projektov, ki vsebuje osem stolpcev. Struktura je naslednja:

```sql
CREATE TABLE Projects(
	Project_number INT AUTO_INCREMENT,
	surname VARCHAR(50) NOT NULL,
	first_name VARCHAR(50),
	start DATE,
	end DATE,
	costs DOUBLE,
	tasks VARCHAR(255) NOT NULL,
	created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
	PRIMARY KEY (Project_number)
);
```

V prvem koraku ustvarimo novo tabelo in jo poimenujemo »Projekti«. V naslednjih vrsticah določimo posamezne stolpce:

- **project\_number**: V tej stolpcu je projektu dodeljena individualna številka. Ta številka se obravnava kot primarni ključ in se zato uporablja za jasno dodelitev vsake posamezne vrstice. S `AUTO_INCREMENT` programu naročimo, naj samodejno nadaljuje vnos v polje »project number«, da se zagotovi enotna zaporedja.
- **priimek**: Tukaj se vpiše priimek stranke. Vnos lahko vsebuje do 50 znakov. Omejitev NOT NULL zagotavlja, da ta stolpec ne more ostati prazen.
- **ime**: Stolpec »ime« deluje podobno kot prejšnji stolpec. Ker pa ime ni potrebno za izstavitev računa, se ta stolpec lahko pusti prazen.
- **začetek**: V tem delu se zabeleži začetek neprekinjenega projekta. Sprejemljive vrednosti so datum v določenem datumu ali ničelna vrednost.
- **end**: Stolpec „end“ opisuje rok ali dejanski zaključek projekta. Te vrednosti so lahko tudi v formatu `DATE` ali `NULL`.
- **costs**: V tej stolpcu je naveden znesek računa. Shranjen je v formatu `DOUBLE`.
- **naloge**: Pod „naloge“ je prostor za kratek opis storitev, ki so bile opravljene za projekt. Stolpec ponuja prostor za do 255 znakov in ne sme biti prazen.
- **created\_at**: V zadnjem stolpcu je shranjen datum ustvarjanja posameznega projekta. Ta temelji na trenutnem času in datumu sistema.

Tip V našem digitalnem vodniku boste izvedeli vse, kar morate vedeti o MariaDB. Na primer, razložimo, kako uporabljati ukaz [MariaDB CREATE USER](https://www.ionos.com/sl-si/digitalguide/gostovanje/tehnicne-zadeve/mariadb-ustvarite-uporabnika/). Najdete tudi podrobno primerjavo MariaDB in MySQL ter vse, kar morate vedeti o namestitvi MariaDB.


This is a markdown version of: [https://www.ionos.com/sl-si/digitalguide/gostovanje/tehnicne-zadeve/mariadb-ustvari-tabelo/](https://www.ionos.com/sl-si/digitalguide/gostovanje/tehnicne-zadeve/mariadb-ustvari-tabelo/) for AI/LLM consumption.