SQL入门到放弃

MySQL学习笔记(二)约束和修改数据表

2017-03-14  本文已影响0人  joshul
约束和修改数据表
一、约束

约束可保证数据的完整性与一致性
约束分为表级约束与列级约束
约束类型包括 NOT NULL | PRIMARY KEY | UNIQUE KEY | DEFAULT | FOREIGN KEY
FOREIGN KEY 可保持数据一致性,完整性,并实现一对一或一对多关系。

外间约束的要求

Paste_Image.png

外键约束的参照操作


Paste_Image.png

表级约束,列级约束

二、修改数据表
增加单列
ALTER TABLE tb_name ADD col_name data_type [FIRST|AFTER col_name];

增加多列
ALTER TABLE tb_name ADD (col_name data_type ,...);

删除单列
ALTER TABLE tb_name DROP col_name;

删除多列
ALTER TABLE tb_name DROP col_name,DROP ....;

复合增减列
ALTER TABLE tb_name ADD col_name data_type [FIRST|AFTER col_name],DROP col_name;
ALTER TABLE tb_name ADD (col_name data_type ,...),DROP col_name,DROP ...;

添加主键约束
ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] PRIMARY KEY(index_col_name);

添加唯一约束

ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY](index_col_name,...);


添加外键约束
ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] FOREIGN KEY(index_col_name,...) REFERENCES db_name(col_name);

添加或删除默认约束
ALTER TABLE tb_name ALTER col_name {SET DEFAULT literal | DROP DEFAULT};

删除主键约束
ALTER TABLE tb_name DROP PRIMARY KEY;

删除唯一约束 先通过 SHOW INDEXES FROM db_name ;来查找索引名
ALTER TABLE tb_name DROP {INDEX|KEY} index_name ;

删除外键约束 先通过 SHOW CREATE TABLE tb_name;来查约束名。
ALTER TABLE tb_name DROP FOREIGN KEY fk_symbol;

修改列定义 这里不仅可以修改列位置,也可以修改列数据类型
ALTER TABLE tb_name MODIFY col_name colimn_definition [FIRST|AFTER col_name];

修改列名称
ALTER TABLE tb_name CHANGE old_col_name new_col_name col_definition [FIRST|AFTER col_name];

修改数据表名
ALTER TABLE tb_name RENAME [TO|AS] new_tb_name
RENAME TABLE tb_name TO new_tb_name[,tb_name2 TO new_tb_name2]
本节知识点
Paste_Image.png
上一篇下一篇

猜你喜欢

热点阅读