
MySQL创建表
在MySQL创建数据库之后,接下来的工作就是创建数据表,所谓创建数据表,指的是在已经创建好的数据库中建立新表。
MySQL创建表语法
MySQL创建表语法如下;
CREATE TABLE [IF NOT EXISTS] table_name( column_1_definition, column_2_definition, ..., table_constraints ) ENGINE=storage_engine;
比如:
DROP TABLE IF EXISTS `table_name`; CREATE TABLE `table_name` ( `id` int NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '主表id', `name` string NOT NULL COMMENT '名称' ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
先判断表是否存在,存在就先删除表,然后在创建表。
MySQL创建表实例
1.MySQL创建空表
mysql> create table mikechen;
2.MySQL创建带字段表
1)创建用户表
CREATE TABLE IF NOT EXISTS customer(
id INT AUTO_INCREMENT,
no VARCHAR(50) NOT NULL,
first_name VARCHAR(255) NOT NULL,
last_name VARCHAR(255) NOT NULL,
status VARCHAR(20) NOT NULL,
phone_number VARCHAR(20) NULL,
updated_at DATETIME NOT NULL,
created_at DATETIME NOT NULL,
PRIMARY KEY(id),
unique(no)
) ENGINE=INNODB;
2)创建订单表
CREATE TABLE IF NOT EXISTS customer_order(
id INT AUTO_INCREMENT,
no VARCHAR(50) NOT NULL,
customer_id INT NOT NULL,
book_id INT NOT NULL,
quantity INT NOT NULL,
total_price DOUBLE NOT NULL,
discount DOUBLE NULL,
order_date DATETIME NOT NULL,
updated_at DATETIME NOT NULL,
created_at DATETIME NOT NULL,
PRIMARY KEY(id),
FOREIGN KEY (customer_id) REFERENCES customer(id) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (book_id) references book (id) on update restrict on delete cascade
) ENGINE=INNODB;
mikechen睿哥
10年+一线大厂架构实战经验,就职于阿里、百度等一线大厂,操盘多个亿级大厂核心项目。