MariaDB CREATE TABLE -komennon käyttö
MariaDB:ssä komentoa CREATE TABLE käytetään uusien taulukoiden luomiseen. Jotta jokainen taulukko olisi ainutlaatuinen tietokannassa, vaihtoehtoja OR REPLACE ja IF NOT EXISTS voidaan käyttää päällekkäisyyksien ja virheilmoitusten välttämiseksi.
Mikä on CREATE TABLE MariaDB:lle?
MariaDB:n CREATE TABLE käytetään uuden taulukon luomiseen, joka voidaan myöhemmin täyttää tiedoilla. MariaDB on relaatiotietokannan hallintajärjestelmä (DBMS), joka käyttää näitä taulukoita kaikkien tallennustoimintojen perustana. Taulukon luomisen aikana määritellään yksittäiset sarakkeet ja kunkin sarakkeen tietotyypit. Taulukot ovat ainutlaatuisia uudessa tietokannassa – MariaDB CREATE DATABASE – joten jos taulukko, jolla on sama nimi, on jo olemassa, näyttöön tulee virheilmoitus. Seuraavissa osioissa kuvataan, miten MariaDB:n CREATE TABLE käytetään, ja tutkitaan käytettävissä olevia vaihtoehtoja.
Syntaksi ja toimintatila
MariaDB:n CREATE TABLE:n yleinen syntaksi noudattaa aina tätä periaatetta:
CREATE TABLE Name_of_table(
Name_of_first_column Data_type_of_first_column,
Name_of_second_column Data_type_of_second_column
…
);sqlTätä varten luo ensin uusi taulukko ja anna sille oma nimi paikkamerkkinä olevan “Name_of_table” sijaan. Kaikki ASCII-koodimerkit ovat sallittuja. Sen jälkeen on määritettävä yksittäiset sarakkeet. Jokaiselle sarakkeelle annetaan oma nimi ja tietotyyppi, joka voidaan tallentaa kyseiseen sarakkeeseen. Kaikki sarakkeet erotetaan toisistaan pilkuilla.
OR REPLACE ja IF NOT EXISTS
Koska taulukot on oltava yksilöllisiä, saat virheilmoituksen , jos taulukko, jolla on sama nimi, on jo olemassa. Voit välttää tämän ongelman kahdella tavalla: OR REPLACE tarkistaa, onko tietokannassa jo taulukko, jolla on sama nimi. Jos näin on, vanha taulukko korvataan uudella. Muussa tapauksessa uusi taulukko luodaan. Tämän lauseen syntaksi on seuraava:
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,
…
);sqlHuomaa kuitenkin, että vanha taulukko korvataan ja sen sisältö menetetään. Tämä vaihtoehto toimii tämän koodin lyhennettynä versiona:
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
…
);sqlToinen tapa välttää päällekkäisyydet tai niistä seuraavat virheilmoitukset on vaihtoehto IF NOT EXISTS. Se tarkistaa, onko tietokannassa jo olemassa samanniminen taulukko. Jos näin on, saat vain ilmoituksen eikä taulukkoa korvata. Jos taulukkoa tällä nimellä ei ole, luodaan uusi taulukko. Vastaava syntaksi näyttää tältä:
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
…
);sqlEsimerkki CREATE TABLE MariaDB:ssä
MariaDB:n CREATE TABLE funktiota voidaan parhaiten havainnollistaa yksinkertaisella esimerkillä. Luomme taulukon kuvitteelliselle projektiluettelolle, joka sisältää kahdeksan saraketta. Rakenne on seuraava:
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)
);sqlEnsimmäisessä vaiheessa luomme uuden taulukon ja nimeämme sen “Projektit”. Seuraavissa riveissä määritämme yksittäiset sarakkeet:
- project_number: Tässä sarakkeessa projektille annetaan yksilöllinen numero. Sitä käsitellään ensisijaisena avaimena, ja siksi sitä käytetään kunkin yksittäisen rivin selkeään määrittämiseen. Arvolla
AUTO_INCREMENTohjeistamme ohjelmaa jatkamaan automaattisesti merkintöjä kentässä ”project number”, jotta varmistetaan yhtenäinen järjestys. - surname: Tähän kenttään kirjataan asiakkaan sukunimi. Merkintää voi olla enintään 50 merkkiä. NOT NULL -rajoitus varmistaa, että tätä saraketta ei voi jättää tyhjäksi.
- first_name: “first_name”-sarake toimii samalla tavalla kuin edellinen sarake. Koska etunimeä ei kuitenkaan tarvita laskutusta varten, tämä sarake voidaan jättää tyhjäksi.
- start: Tässä osiossa tallennetaan jatkuvan projektin aloituspäivä. Hyväksyttävät arvot ovat päivämäärä määritellyssä päivämäärämuodossa tai nolla-arvo.
- end: ”end” kuvaa projektin määräaikaa tai todellista päättymisajankohtaa. Nämä arvot voivat olla myös muodossa
DATEtaiNULL. - costs: Laskun summa on merkitty tähän sarakkeeseen. Se tallennetaan muodossa
DOUBLE. - tehtävät: Kohdassa ”tehtävät” on tilaa lyhyelle kuvaukselle projektin yhteydessä suoritetuista palveluista. Sarakkeeseen mahtuu enintään 255 merkkiä, eikä sitä saa jättää tyhjäksi.
- created_at: Viimeisessä sarakkeessa on tallennettu kyseisen projektin luomispäivä. Se perustuu järjestelmän nykyiseen kellonaikaan ja päivämäärään.