shrnutí: v tomto tutoriálu vám ukážeme, jak používat příkaz MySQL CREATE TABLE
k vytvoření nové tabulky v databázi.
MySQL CREATE TABLE syntaxe
CREATE TABLE
prohlášení umožňuje vytvořit novou tabulku v databázi.
následující ilustruje základní syntaxi příkazu CREATE TABLE
:
podívejme se podrobněji na syntaxi.,
nejprve zadáte název tabulky, kterou chcete vytvořit zaCREATE TABLE
klíčová slova. Název tabulky musí být v databázi jedinečný. IF NOT EXISTS
je volitelný. Umožňuje zkontrolovat, zda tabulka, kterou vytvoříte, již v databázi existuje. Pokud tomu tak je, MySQL ignoruje celé prohlášení a nevytvoří žádnou novou tabulku.
Zadruhé zadáte seznam sloupců tabulky v sekci column_list
, sloupce jsou odděleny čárkami.,
za třetí můžete volitelně zadat úložný motor tabulky v klauzuli ENGINE
. Můžete použít jakýkoli úložný motor, jako jsou InnoDB a MyISAM. Pokud nechcete explicitně deklarovat Storage engine, MySQL bude používat InnoDB ve výchozím nastavení.
InnoDB se stal výchozím úložným motorem od verze MySQL 5.5. InnoDB storage engine přináší mnoho výhod relačního systému správy databází, jako je ACID transakce, referenční integrita, a crash recovery. V předchozích verzích MySQL použil MyISAM jako výchozí paměťový motor.,
následující příklad ukazuje syntaxi pro sloupec definice:
Zde jsou podrobnosti:
column_name
určuje název sloupec. Každý sloupec má určitý datový typ a volitelné velikosti např.VARCHAR(255)
NOT NULL
omezení zajišťuje, že sloupec bude obsahovatNULL
. Kromě omezeníNOT NULL
může mít sloupec další omezení, jako je kontrola a jedinečný.DEFAULT
určuje výchozí hodnotu sloupce.,AUTO_INCREMENT
znamená, že hodnota sloupce se automaticky zvýší o jeden, kdykoli je do tabulky vložen nový řádek. Každá tabulka má maximálně jedenAUTO_INCREMENT
sloupec.
po seznamu sloupců můžete definovat omezení tabulky, jako je UNIQUE, CHECK, PRIMARY KEY a FOREIGN KEY.
například, pokud chcete nastavit sloupec nebo skupina sloupců jako primární klíč, můžete použít následující syntaxi:
Code language: SQL (Structured Query Language) (sql)
MySQL CREATE TABLE příklady
vezměme si některé příklady vytváření nové tabulky.,
1) MySQL CREATE TABLE jednoduchý příklad
následující příkaz vytvoří novou tabulku s názvem tasks
:
Code language: SQL (Structured Query Language) (sql)
úkoly tabulka má následující sloupce:
task_id
auto-přírůstek sloupce. Pokud použijeteINSERT
výkazu vložit nový řádek do tabulky, aniž byste zadali hodnotu protask_id
sloupce, MySQL bude automaticky generovat sekvenční číslo protask_id
počínaje 1.,- sloupec
title
je sloupec řetězce proměnných znaků, jehož maximální délka je 255. To znamená, že do tohoto sloupce nelze vložit řetězec, jehož délka je větší než 255.NOT NULL
omezení znamená, že sloupec nepřijímáNULL
. Jinými slovy, při vkládání nebo aktualizaci tohoto sloupce musíte poskytnout hodnotu bez NULL. start_date
due_date
DATE
sloupce., Protože tyto sloupce nemajíNOT NULL
omezení, mohou ukládatNULL
. Sloupec start_date má výchozí hodnotu aktuálního data. Jinými slovy, pokud při vkládání nového řádku neposkytnete hodnotu sloupce start_date, sloupec start_date bude mít aktuální datum databázového serveru.status
priority
TINYINT
sloupce, které neumožňujíNULL
.,description
sloupceTEXT
sloupec, který přijímáNULL
.created_at
jeTIMESTAMP
sloupec, který přijímá aktuální čas jako výchozí hodnotu.
task_id
je primární sloupec klíče tabulkytasks
. To znamená, že hodnoty ve sloupci task_id
jednoznačně identifikují řádky v tabulce.,
po spuštění CREATE TABLE
příkaz pro vytvoření tasks
tabulka, můžete si prohlédnout jeho strukturu pomocí DESCRIBE
prohlášení:
Code language: SQL (Structured Query Language) (sql)
Tento obrázek ukazuje databáze schéma tasks
tabulka:
2) MySQL, VYTVOŘIT TABULKY s cizí klíč primární klíč příklad:
Předpokládejme, že každý úkol má kontrolní seznam nebo seznam úkolů., Ukládat seznamy úkolů, můžete vytvořit novou tabulku s názvem checklists
takto:
tabulka checklists
má primární klíč, který se skládá ze dvou sloupců., Proto jsme použili tabulku omezení definovat primární klíč:
Code language: SQL (Structured Query Language) (sql)
kromě toho, task_id
je cizí klíč sloupec, který odkazuje na task_id
sloupce tabulky tasks
jsme použili cizí klíč omezení stanovit tento vztah:
Budete se dozvědět více o omezení cizího klíče v následujícím tutoriálu.,
Tento obrázek ilustruje checklists
tabulka a její vztah s tasks
tabulky:
V tomto kurzu, jste se naučili, jak používat MySQL CREATE TABLE
příkaz pro vytvoření nové tabulky v databázi.
- byl tento tutoriál užitečný?
- YesNo