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 –, 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:
CREATE TABLE Name_of_table(
Name_of_first_column Data_type_of_first_column,
Name_of_second_column Data_type_of_second_column
…
);sqlZa 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:
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,
…
);sqlUpoštevajte pa, da bo stara tabela prepisana in njena vsebina izgubljena. Ta možnost deluje kot skrajšana oblika tega kode:
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
…
);sqlDrugi 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:
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
…
);sqlPrimer 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:
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)
);sqlV 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_INCREMENTprogramu 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
DATEaliNULL. - 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.