Mnohokrát možná budete muset vytvořit tabulku v MySQL. Zde je návod, jak vytvořit tabulku pomocí příkazu MySQL CREATE TABLE.
Jak vytvořit tabulku v MySQL
Zde jsou kroky k vytvoření tabulky v MySQL.
MySQL CREATE TABLE umožňuje vytvořit novou tabulku v databázi. Zde je syntaxe.
CREATE TABLE [IF NOT EXISTS] table_name( column_1_definition, column_2_definition, ..., table_constraints ) ENGINE=storage_engine;
Ve výše uvedeném dotazu na vytvoření tabulky název_tabulky je název vašeho nového stolu. IF NOT EXISTS je volitelný argument, který zkontroluje, zda tabulka již existuje, a vytvoří tabulku pouze v případě, že neexistuje.
definice_1_sloupce , definice_2_sloupce , … jsou různé definice sloupců, z nichž každá se skládá z názvu sloupce a datového typu.
table_contraints jsou různé typy volitelných omezení, jako je omezení cizího klíče, omezení primárního klíče atd.
Jako proměnnou ENGINE můžete volitelně zadat úložný stroj. MySQL podporuje úložiště InnoDB a MyISAM. Pokud tuto proměnnou neurčíte, MySQL bude standardně používat InnoDB.
Bonusové čtení:MySQL Alter Table Column
Příklady CREATE TABLE MySQL
Zde je dotaz SQL pro vytvoření tabulky v MySQL. Vytvoříme objednávky tabulky pro uložení seznamu objednávek
CREATE TABLE IF NOT EXISTS orders ( id INT AUTO_INCREMENT PRIMARY KEY, product_name VARCHAR(255) NOT NULL, order_date DATE, price INT NOT NULL, description TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ENGINE=INNODB; mysql> describe orders; +--------------+--------------+------+-----+-------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+-------------------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | product_name | varchar(255) | NO | | NULL | | | order_date | date | YES | | NULL | | | price | int(11) | NO | | NULL | | | description | text | YES | | NULL | | | created_at | timestamp | NO | | CURRENT_TIMESTAMP | | +--------------+--------------+------+-----+-------------------+----------------+
Ve výše uvedeném dotazu
id je primární klíč naší tabulky s omezením AUTO INCREMENT. Takže když do této tabulky přidáte nový řádek, MySQL automaticky zvýší a automaticky vyplní tento sloupec pro nový řádek.
název_produktu je sloupec VARCHAR (řetězec) pro uložení názvu produktu
datum_objednávky je sloupec data. Protože nemá žádná omezení, může mít dokonce hodnoty NULL.
cena je celočíselný sloupec s omezením NOT NULL. Nemůže tedy mít hodnoty null.
vytvořeno_at je sloupec časového razítka s výchozí hodnotou CURRENT_TIMESTAMP.
Pro tuto tabulku jsme se rozhodli použít úložný modul INNODB.
Bonusové čtení:SLOUPEC PŘIDÁNÍ MySQL
MySQL CREATE TABLE with FOREIGN KEY
Vytvořme novou tabulku v MySQL s omezením FOREIGN KEY. Vytvoříme novou tabulku stav_objednávky s cizím klíčem order_id který odkazuje na primární klíč objednávky tabulka.
mysql> CREATE TABLE IF NOT EXISTS order_status ( status_id INT AUTO_INCREMENT, order_id INT, status VARCHAR(255) NOT NULL, is_completed BOOLEAN NOT NULL DEFAULT FALSE, PRIMARY KEY (status_id), FOREIGN KEY (order_id) REFERENCES orders (id) ON UPDATE RESTRICT ON DELETE CASCADE ); mysql> describe order_status; +--------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+---------+----------------+ | status_id | int(11) | NO | PRI | NULL | auto_increment | | order_id | int(11) | YES | MUL | NULL | | | status | varchar(255) | NO | | NULL | | | is_completed | tinyint(1) | NO | | 0 | | +--------------+--------------+------+-----+---------+----------------+
Ve výše uvedeném dotazu přidáme omezení cizího klíče pomocí MySQL ADD FOREIGN KEY
Doufejme, že nyní můžete snadno vytvořit tabulku v MySQL.
Ubiq usnadňuje vizualizaci dat během několika minut a sledování na řídicích panelech v reálném čase. Vyzkoušejte to ještě dnes!