Många gånger kan du behöva skapa tabeller i MySQL. Så här skapar du en tabell med kommandot MySQL CREATE TABLE.
Hur man skapar en tabell i MySQL
Här är stegen för att skapa tabeller i MySQL.
MySQL CREATE TABLE låter dig skapa en ny tabell i databasen. Här är syntaxen.
CREATE TABLE [IF NOT EXISTS] table_name( column_1_definition, column_2_definition, ..., table_constraints ) ENGINE=storage_engine;
I ovanstående skapa tabell-fråga, tabellnamn är namnet på ditt nya bord. IF NOT EXISTS är ett valfritt argument som kontrollerar om tabellen redan finns och skapar en tabell endast om den inte finns.
column_1_definition , kolumn_2_definition , … är olika kolumndefinitioner som var och en består av kolumnnamn och datatyp.
table_contraints finns olika typer av valfria begränsningar som begränsningar för främmande nyckel, begränsningar för primärnyckel osv.
Du kan valfritt ange lagringsmotor som ENGINE-variabel. MySQL stöder InnoDB och MyISAM lagringsmotorer. Om du inte anger denna variabel kommer MySQL att använda InnoDB som standard.
Bonus Läs:MySQL Alter Table Column
Exempel på MySQL SKAPA TABELL
Här är SQL-frågan för att skapa tabeller i MySQL. Vi kommer att skapa en order tabell för att lagra listan över beställningar
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 | | +--------------+--------------+------+-----+-------------------+----------------+
I ovanstående fråga,
id är vår tabells primärnyckel med begränsningen AUTO ÖKNING. Så när du lägger till en ny rad i den här tabellen kommer MySQL automatiskt att öka och automatiskt fylla i den här kolumnen för den nya raden.
produktnamn är en VARCHAR (sträng) kolumn för att lagra produktnamn
order_datum är en datumkolumn. Eftersom den inte har några begränsningar kan den till och med ha NULL-värden.
pris är en heltalskolumn med en NOT NULL-begränsning. Så det kan inte ha nollvärden.
skapad_på är en tidsstämpelskolumn med CURRENT_TIMESTAMP som standardvärde.
Vi har valt att använda INNODB lagringsmotor för denna tabell.
Bonus Läs:MySQL ADD COLUMN
MySQL SKAPA TABELL med FOREIGN KEY
Låt oss skapa en ny tabell i MySQL med FOREIGN KEY-begränsning. Vi kommer att skapa en ny tabell order_status med en främmande nyckel order_id som refererar till den primära nyckeln för order bord.
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 | | +--------------+--------------+------+-----+---------+----------------+
I ovanstående fråga lägger vi till en främmande nyckel-begränsning med MySQL ADD FOREIGN KEY
Förhoppningsvis kan du nu enkelt skapa tabeller i MySQL.
Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!