Много пъти може да се наложи да създадете таблица в MySQL. Ето как да създадете таблица с помощта на командата MySQL CREATE TABLE.
Как да създадете таблица в MySQL
Ето стъпките за създаване на таблица в MySQL.
MySQL CREATE TABLE ви позволява да създадете нова таблица в базата данни. Ето синтаксиса.
CREATE TABLE [IF NOT EXISTS] table_name( column_1_definition, column_2_definition, ..., table_constraints ) ENGINE=storage_engine;
В горната заявка за създаване на таблица име_на_таблица е името на вашата нова маса. АКО НЕ СЪЩЕСТВУВА е незадължителен аргумент, който проверява дали таблицата вече съществува и създава таблица само ако не съществува.
дефиниция_1_колона , дефиниция_2_колона , … са различни дефиниции на колони, всяка от които се състои от име на колона и тип данни.
table_contraints са различни типове опционални ограничения, като ограничение на външния ключ, ограничение на първичния ключ и т.н.
Можете по избор да посочите механизма за съхранение като променлива ENGINE. MySQL поддържа InnoDB и MyISAM машини за съхранение. Ако не посочите тази променлива, MySQL ще използва InnoDB по подразбиране.
Бонус четене:MySQL Alter Table Column
Примери за MySQL CREATE TABLE
Ето SQL заявката за създаване на таблица в MySQL. Ще създадем поръчки таблица за съхраняване на списъка с поръчки
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 | |
+--------------+--------------+------+-----+-------------------+----------------+
В горната заявка,
идентификатор е първичният ключ на нашата таблица с ограничение AUTO INCREMENT. Така че, когато добавите нов ред към тази таблица, MySQL автоматично ще увеличи и автоматично ще попълни тази колона за новия ред.
име_на_продукт е колона VARCHAR (низ) за съхраняване на името на продукта
дата_на_поръчка е колона за дата. Тъй като няма никакви ограничения, може дори да има стойности NULL.
цена е целочислена колона с ограничение NOT NULL. Така че не може да има нулеви стойности.
created_at е колона с клеймо за време с CURRENT_TIMESTAMP като стойност по подразбиране.
Избрахме да използваме машина за съхранение на INNODB за тази таблица.
Бонус четене:MySQL ДОБАВЯНЕ НА КОЛОНА
MySQL СЪЗДАВАНЕ НА ТАБЛИЦА с ВЪНШЕН КЛЮЧ
Нека създадем нова таблица в MySQL с ограничение FOREIGN KEY. Ще създадем нова таблица order_status с външен ключ order_id който препраща към първичния ключ на поръчките таблица.
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 | |
+--------------+--------------+------+-----+---------+----------------+
В горната заявка добавяме ограничение за външен ключ, използвайки MySQL ADD FOREIGN KEY
Надяваме се, че сега можете лесно да създадете таблица в MySQL.
Ubiq улеснява визуализирането на данни за минути и наблюдение в табла за управление в реално време. Опитайте днес!