MariaDB duomenų bazėje komanda CREATE TABLE naudojama naujoms lentelėms kurti. Kad kiekviena lentelė duomenų bazėje būtų unikali, galima naudoti parinktis OR REPLACE ir IF NOT EXISTS, kad būtų išvengta dub­lia­vi­mo­si ir klaidų pranešimų.

Kas yra CREATE TABLE MariaDB?

MariaDB komanda CREATE TABLE naudojama naujos lentelės, į kurią vėliau galima įvesti duomenis, sukūrimui. Kaip reliacinė duomenų bazių valdymo sistema (DBMS), MariaDB naudoja šias lenteles kaip pagrindą visoms saugojimo ope­ra­ci­joms. Sukuriant lentelę, api­brė­žia­mos atskiros stul­pe­liai ir nurodomi kiekvieno stulpelio duomenų tipai. Lentelės yra unikalios naujai sukurtoje duomenų bazėje – MariaDB CREATE DATABASE – todėl, jei lentelė su tuo pačiu pa­va­di­ni­mu jau eg­zis­tuo­ja, bus ge­ne­ruo­ja­mas klaidos pra­ne­ši­mas. Toliau ap­ra­šy­si­me, kaip naudoti CREATE TABLE komandą MariaDB ir iš­nag­ri­nė­si­me galimas naudoti parinktis.

Sintaksė ir veikimo režimas

Bendroji MariaDB CREATE TABLE sintaksė visada atitinka šį principą:

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

Norėdami tai padaryti, pir­miau­sia sukurkite naują lentelę ir suteikite jai savo pa­va­di­ni­mą vietoj laikinojo pa­va­di­ni­mo „Name_of_table“. Leidžiami visi ASCII kodo simboliai. Tada reikia nurodyti atskiras stul­pe­lius. Kiek­vie­nam iš šių stulpelių su­tei­kia­mas savo pa­va­di­ni­mas ir duomenų tipas, kuris gali būti saugomas šiame stul­pe­ly­je. Visi stul­pe­liai at­ski­ria­mi vienas nuo kito kab­le­liais.

OR REPLACE ir IF NOT EXISTS

Kadangi lentelės turi būti unikalūs, jei lentelė su tuo pačiu pa­va­di­ni­mu jau eg­zis­tuo­ja, gausite klaidos pranešimą. Norėdami išvengti šios problemos, turite dvi galimybes: OR REPLACE galimybė patikrina, ar duomenų bazėje jau eg­zis­tuo­ja lentelė su tuo pačiu pa­va­di­ni­mu. Jei taip, senoji lentelė pa­kei­čia­ma nauja. Kitaip, tiesiog sukurta nauja lentelė. Šio teiginio sintaksė atrodo taip:

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,
	…
);
sql

Tačiau at­kreip­ki­te dėmesį, kad senoji lentelė bus perrašyta, o jos turinys bus prarastas. Ši parinktis veikia kaip trumpas šio kodo variantas:

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
	…
);
sql

Kitas būdas išvengti dub­lia­vi­mo­si ar vėlesnių klaidų pranešimų yra IF NOT EXISTS variantas. Jis patikrina, ar duomenų bazėje jau yra lentelė su tuo pačiu pa­va­di­ni­mu. Jei taip, gausite tik pranešimą, o lentelė nebus perrašyta. Jei lentelės su šiuo pa­va­di­ni­mu nėra, bus sukurta nauja lentelė. Ati­tin­ka­ma sintaksė atrodo taip:

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
	…
);
sql

Pavyzdys CREATE TABLE MariaDB

CREATE TABLE funkciją MariaDB galima ge­riau­siai iliust­ruo­ti paprastu pavyzdžiu. Sukursime lentelę fiktyviam projektų sąrašui, kuriame yra aštuonios stul­pe­liai. Jos struktūra yra tokia:

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)
);
sql

Pirmame žingsnyje sukuriame naują lentelę ir pa­va­di­na­me ją „Projektai“. Toliau esančiose eilutėse nurodome atskiras stul­pe­lius:

  • project_number: Šioje skiltyje projektui pri­ski­ria­mas in­di­vi­dualus numeris. Jis laikomas pirminiu raktu, todėl nau­do­ja­mas aiškiai priskirti kiekvieną atskirą eilutę. Skaičiumi AUTO_INCREMENT nurodome programai au­to­ma­tiš­kai tęsti įrašus „projekto numeris“, kad būtų už­tik­rin­ta vienoda seka.
  • pavardė: čia įrašoma kliento pavardė. Įrašas gali būti iki 50 simbolių ilgio. Ap­ri­bo­ji­mas NOT NULL užtikrina, kad ši skiltis negali būti palikta tuščia.
  • first_name: Stulpelis „first_name“ veikia panašiai kaip ir anks­tes­nis stulpelis. Tačiau, kadangi vardas nėra rei­ka­lin­gas sąskaitai išrašyti, šis stulpelis gali būti paliktas tuščias.
  • pradžia: Šioje dalyje įrašoma nuo­la­ti­nio projekto pradžia. Priimtini reikšmės yra data nurodytu datos formatu arba nulinė reikšmė.
  • end: „end“ apibūdina projekto terminą arba faktinį užbaigimą. Šios reikšmės taip pat gali būti DATE arba NULL formatu.
  • costs: Šioje skiltyje nurodyta sąskaitos suma. Ji saugoma formatu DOUBLE.
  • užduotys: skiltyje „užduotys“ yra vietos trumpam aprašyti projekto metu atliktas paslaugas. Skiltyje yra vietos iki 255 simbolių ir ji neturi būti palikta tuščia.
  • created_at: pas­ku­ti­nė­je skiltyje saugoma ati­tin­ka­mo projekto sukūrimo data. Ji pagrįsta da­bar­ti­niu sistemos laiku ir data.
Go to Main Menu