1. 先选择创建表所在的数据库
2. 创建表
3. 查看表是否创建成功
4. 主键:要求主键列的数据唯一,且不允许为空。主键能够唯一的标识表中的每一条记录,可以结合外键来定义不同数据表之间的关系,并且可以加快数据库查询的速度。
主键分为:单字段主键和多字段联合主键。
4.1 单字段主键
4.1.1 定义方式一:在定义列的同时指定主键
4.1.2 定义方式二:在定义完所有的列之后指定主键
4.2 多字段联合主键
5. 使用外键约束
外键用来在两个表之间建立连接,可以是一列或多列。一个表的外键可以是空值,若不为空值,则每一个外键值必须等于另一个表中主键的某个值。
外键可以不是本表的主键,但对应另外一个表的主键。作用是保证数据的完整性和一致性。
主表:相关联字段中主键所在的那个表即是主表
从表:相关联字段中外键所在的那个表即是从表
创建一个部门表作为主表,让其主键作为外键关联到员工表的主键id
在表tb_emp5上添加了名称为fk_emp_dept1的外键约束,外键名称为deptId,其依赖于表tb_dept1的主键id
6.使用非空约束
Not Null Constraint,指字段的值不能为空。对于使用了非空约束的字段,如果用户在添加数据时没有指定值,数据库会报错
指定员工姓名不能为空
7.使用唯一性约束
Unique Constraint,要求该列唯一,允许为空,但只能出现一个空值,唯一约束可以保证一列或几列不出现重复值
7.1 定义方式一:在定义完列之后直接指定唯一约束
指定部门名称唯一
7.2 定义方式二:在定义完所有的列之后指定唯一约束
唯一约束和主键的区别:
一个表中有多个字段可以声明为UNIQUE,但只能声明一个PRIMARY KEY,主键的列不能有空值,但声明UNIQUE的列可以允许空值的存在
8. 使用默认约束
如果插入一条新的记录时没有为这个字段赋值,那么系统会自动为这个字段赋值为默认值
指定员工的部门编号默认为1111
9.设置表的属性值自动增加
为主键添加AUTO_INCREMENT关键字来实现,让主键自增,默认的初始值是1
一个表只有一个字段只用此约束,且该字段必须为主键的某一列,可以是任何整数类型(tinyint/smallint/int/bigint)
指定员工的编号自动递增,每次新添加一条记录,该值自动加1
新增加三条数据测试
使用select命令查看记录,得到主键值是依次递增的