V MariaDB se k vytvoření nových tabulek používá příkaz CREATE TABLE. Aby byla zajištěna jedinečnost každé tabulky v databázi, lze použít možnosti OR REPLACE a IF NOT EXISTS, které zabrání duplicitám a chybovým hlášením.

Co je CREATE TABLE pro MariaDB?

Příkaz CREATE TABLE v MariaDB se používá k vytvoření nové tabulky, kterou lze později naplnit daty. Jako relační systém pro správu databází (DBMS) používá MariaDB tyto tabulky jako základ pro všechny operace ukládání dat. Při vytváření tabulky se definují jednotlivé sloupce a specifikují se datové typy pro každý sloupec. Tabulky jsou v nově vytvořené databázi jedinečné – MariaDB CREATE DATABASE – takže pokud již existuje tabulka se stejným názvem, zobrazí se chybová zpráva. V následujících částech popíšeme, jak používat příkaz CREATE TABLE v MariaDB, a prozkoumáme dostupné možnosti, které můžete použít.

Syntaxe a provozní režim

Obecná syntaxe CREATE TABLE v MariaDB vždy dodržuje tento 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

K tomu nejprve vytvořte novou tabulku a pojmenujte ji namísto zástupného symbolu „Name_of_table“. Jsou povoleny všechny znaky ASCII kódu. Poté je třeba specifikovat jednotlivé sloupce. Každý z těchto sloupců dostane vlastní název a datový typ, který může být v tomto sloupci uložen. Všechny sloupce jsou od sebe odděleny čárkami.

OR REPLACE a IF NOT EXISTS

Protože tabulky musí být jedinečné, zobrazí se chybová zpráva , pokud již existuje tabulka se stejným názvem. Abyste se tomuto problému vyhnuli, máte dvě možnosti: Možnost OR REPLACE zkontroluje, zda v databázi již existuje tabulka se stejným názvem. Pokud ano, stará tabulka je nahrazena novou. V opačném případě je nová tabulka jednoduše vytvořena. Syntaxe tohoto příkazu vypadá takto:

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

Upozorňujeme však, že stará tabulka bude přepsána a její obsah bude ztracen. Tato možnost funguje jako zkrácená forma tohoto kódu:

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

Dalším způsobem, jak se vyhnout duplicitám nebo následným chybovým hlášením, je možnost IF NOT EXISTS. Ta zkontroluje, zda v databázi již existuje tabulka se stejným názvem. Pokud ano, obdržíte pouze upozornění a žádná tabulka nebude přepsána. Pokud tabulka s tímto názvem neexistuje, bude vytvořena nová tabulka. Odpovídající syntaxe vypadá takto:

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

Příklad CREATE TABLE v MariaDB

Funkci CREATE TABLE v MariaDB lze nejlépe demonstrovat na jednoduchém příkladu. Vytvoříme tabulku pro fiktivní seznam projektů, která obsahuje osm sloupců. Struktura je následující:

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

V prvním kroku vytvoříme novou tabulku a pojmenujeme ji „Projekty“. V následujících řádcích specifikujeme jednotlivé sloupce:

  • project_number: V tomto sloupci je projektu přiřazeno individuální číslo. Je považováno za primární klíč a proto se používá k jasnému přiřazení každé jednotlivé řádky. Číslem AUTO_INCREMENT dáváme programu pokyn, aby automaticky pokračoval v zadávání položek do „čísla projektu“, aby byla zajištěna jednotná posloupnost.
  • příjmení: Zde se zaznamenává příjmení zákazníka. Záznam může mít délku až 50 znaků. Omezení NOT NULL zajišťuje, že tento sloupec nelze nechat prázdný.
  • first_name: Sloupec „first_name“ funguje podobně jako předchozí sloupec. Jelikož však k fakturaci není jméno nutné, lze tento sloupec nechat prázdný.
  • start: V této části se zaznamenává začátek průběžného projektu. Přijatelné hodnoty jsou datum ve stanoveném formátu nebo hodnota null.
  • end: „end“ popisuje termín nebo skutečné dokončení projektu. Tyto hodnoty mohou být také ve formátu DATE nebo NULL.
  • costs: V tomto sloupci je uvedena částka faktury. Je uložena ve formátu DOUBLE.
  • tasks: V části „tasks“ je prostor pro krátký popis služeb, které byly pro projekt provedeny. Sloupec nabízí prostor pro maximálně 255 znaků a nesmí být ponechán prázdný.
  • created_at: V posledním sloupci je uloženo datum vytvoření příslušného projektu. Je založeno na aktuálním čase a datu systému.
Přejít do hlavního menu