现在我们要创建一个名为persons的表:
CREATE TABLE IF NOT EXISTS persons(
id TINYINT CHECK(id>0) PRIMARY KEY,
NAME VARCHAR(10) NOT NULL UNIQUE,
weight SMALLINT UNSIGNED NOT NULL
)ENGINE=INNODB CHARSET=utf8;
1. 语法:
CREATE table 表名(字段1 字段1的数据类型 【约束】,
字段2 字段2的数据类型 【约束】,
......
)【约束】;
2. 数据类型(来自runoob)
(1) 数值类型
(2)日期类型
(3)字符类型
3. 约束:
(1)NOT NULL:字段中不允许出现NULL
(2)UNIQUE:唯一标识数据库表中的每条记录,也就是约束该字段中没有重复的项,一个表中可以有多个UNIQUE约束
(3)PRIMARY KEY:设置该字段为主键,一个表中只能有一个主键
(4)FOREIGN KEY:一个表中的 FOREIGN KEY 是指向另一个表中的 PRIMARY KEY的
(5)CHECK:限制该字段中的值的范围,如CHECK (id>0)
(6)DEFAULT :向字段中添加默认值
(7)ENGINE: 设置存储引擎,不写则默认为InnoDB
(8)CHARSET :设置编码格式,默认为utf8
4. 注意
(1)字段名和表名不要用加引号
(2)varchar要在括号内写明其字符最大长度
(3)约束可以写在数据类型后面以空格隔开,也可以定义完字段后写在后面以逗号隔开