MySQL数据表的修改:添加约束

MySQL数据表的修改:添加约束,第1张

4.4.7添加约束

语句格式:ALTER TABLE 表名ADD  CONSTRAINT  约束名 约束类型(字段名)

上面语句格式中,“表名”指定要添加约束的是哪个表,“ADD CONSTRAINT”表示要在表中增加约束,其后的“约束名”是拟增加约束的名字,“约束类型”是拟增加约束的类型,其后括号里的“字段名”是指约束是在哪一个字段上建立起来的。

下面截图中的“ALTER TABLE”语句在t_dept表中新增加了一个约束名为unidept的约束,它是在对字段deptno进行的唯一性约束。

一、Mysql支持以下约束:

※  主键约束 :primary key

※  唯一性约束:unique key

※  外键约束:foreign key

※  非空约束:not null

※  默认值约束:default

二、主键约束:

一个表只能有一个主键,当建表时忘记设置主键约束时.设置为主键的列查询速度会非常快,所以一般会用聚集索引,这个我们后面会讲到。

添加主键约束:设置myself表的age为主键

语法:alter  table 表名 add primary key(列名)※  可以有多个列名。

三、外键约束:

何为外键,当建表时需要用到另外一个表的主键作为本表的的主键时,需要设置外键。设置外间后,若想在删除本表数据时会级联删除或者默认删除其他方式。

添加外键约束:设置本表的cno为外键

语法:alter table 表名称 add foreign key (列名称)  references  关联表名称(列名称)

四、非空约束:

当插入新数据时对应的列为不能空。非空约束是相对于默认值约束而说的。

添加非空约束:

语法:alter table 表名 modify 列名 列类型 not null 

五、默认值约束:default:

当插入时没有插入值时,会自动插入默认值。默认值约束相对于非空约束而说。

添加默认值约束:

语法:alter table 表名 add 列名 列类型 not null default '默认值';

六、唯一性约束:

本列的内容只能唯一不能重复。

添加唯一约束:

 语法:alter table 列名 add unique(列名称)  ※可以有多个列名称,用逗号隔开。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5896597.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存