一、字段类型:
1.数值型(整型):
①都可设置有符号和无符号,默认状态是有符号。
②会超出范围,不报错,报警告,如果超出范围插入的是临界值。
③长度可以不指定,默认会有一个长度。长度代表显示最大宽度,如果不够可以在左边补零,搭配zerofill,变为无符号型。
2.数值型(浮点型):
①decimal(M,D):m代表整数部位+小数部位,D代表小数部位的个数。
②会超出范围,不报错,报警告,如果超出范围插入的是临界值。
③M,D都可以省略,但对于定点数,M默认为10,D默认为0。
3.字符型
①char:固定长度,char(M)最长不超过M,其中M可以省略,默认为1。
②varchar:可变长度,varchar(M),最长不超过M,M不可以省略。
4.时间型:
①timestamp:日期+时间。容易受时区,语法模式,版本的影响,但是更能反映当时的时区时间。
二、常见约束(6大约束)
1.not null:非空。用于保证字段的值不能为空。
2.default:默认约束。保证字段有默认值。
3.primary key:主键。
4.unique:用于保证字段的值有唯一性,可以为空。
5.check:检查约束。
6.foreign key:外键约束。限制两个表的关系,用于保证该字段的值必须来自主表的关联列的值。
CREATE TABLE myTable(
id INT PRIMARY KEY,
stuName VARCHAR(50) NOT NULL,
gender CHAR(1) CHECK(gender='1' OR gender='0'),
age INT DEFAULT 18,
seat INT UNIQUE ,
department_id INT,
FOREIGN KEY(department_id) REFERENCES departments(department_id)
)