3、修改表
3_1 修改表结构
1、add的用法
2、modify的用法
将classmonitor放到了第一行,作为第一个字段,此时,first后无需再加其他;
3、change的用法
change的要出现旧的字段名和新的字段名,也可进行类型的改变;
以上三种修改语法均可进行字段类型的改变,不同于add和modify可以改变字段的(添加)位置,change只能对字段名和字段类型进行修改。
3_2 更改存储引擎
3_3 重命名表名
4、删除表
使用drop的命令来实现表的删除,可以先打开数据库,再进行删除,或者直接用数据库名.表名。
5、数据的完整性约束
5_1 主键约束(PRIMARY KEY Constraint)
每个表只定义一个主键;主键的值不能为NULL;复合主键不能包含不必要的多余列;一个列名在复合主键的列表中只能出现一次。
1)列级完整性约束
直接把primary key 写在作为主键的列名定义后面;
2)表级完整性约束
删除原来的主键并添加新的主键(在修改表时,添加主键)。
5_2 完整性约束的命名
5_3 唯一键约束(UNIQUE KEY Constraint)
1)列级完整性约束
2)表级完整性约束
唯一键的值必须唯一,允许为NULL,但只能有一条记录为NULL。
修改表时,添加唯一键约束(增加新列)
如果表已经存在,那么可以用下面的语句来修改列的属性
显示表中的索引
5_4主键约束与唯一键约束的区别
1、一个表中可以有多列声明为唯一键约束,但只能有一个主键声明;
2、声明为主键的列不允许有空值,声明为唯一键的列允许有空值。
5_5 外键约束(FOREIGN KEY Constraint)
外键是表中的一列或多列,它不是本表的主键,却是另外一个表的主键。
外键用来在两个表的数据之间建立连接。它可以是一列或者多列,一个表
可以有一个或多个外键。外键对应列的数目必须和主表的主键对应列的数目相同。
外键的主要作用是保证数据引用的完整性。从表参照主表,从表是指外键所在的那个表,从表的记录参照了主表的某条记录,那么主表记录的删除或修改操作可能失败;要想删除主表中被参照的字段,必须先在从表中进行删除。
首先删除从表中引用主表的记录(book是从表,先删除从表中对主表该条记录的参照)
然后删除主表中的记录(borrow是主表,在删除从表中引用主表的记录后,可对主表中的记录进行删除)
1)列级完整性约束
2)表级完整性约束
在class表中,ClassID被定义为主键约束,才能够在student表中,定义ClassID为外键,同时要保证两表的存储引擎、字符集、校对规则一致,以及ClassID列的数据类型相同
3)通过alter table语句添加外键约束
5_6 更新完整性约束
1. 删除约束
(1)删除主键约束
(2)删除唯一键约束
(3)删除外键约束