为了账号安全,请及时绑定邮箱和手机立即绑定

Mysql 约束

一张表 主键约束只有一个, 那么主键约束怎么能作为表级约束的呢?

正在回答

1 回答

在列定义同时定义的约束称为列级完整性约束定义,作为表的独立的一项定义的完整性约束称为表级完整性约束。在列级完整性约束定义处可以定义如下约束: 一、NOT NULL:限制列取非空值 二、DEFAULT:指定列的默认值,使用形式为:DEFAULT 常量 三、UNIQUE:限制列取值不重 四、CHECK:限制列的取值范围,使用形式为:CHECK(约束表达式) 五、PRIMARY KEY:指定本列为主码 六、FOREIGN KEY:定义本列为引用其他表的外码。使用形式为: 【FOREIGN KEY(<列名>)】REFERENCES<外表名>(<外表列名>) 在上述约束中,除了NOT NULL和DEFAULT不能在表级完整性约束处定义之外,其他约束均可在表级完整性约束处定义。但有几点需要主义:第一,如果CHECK约束是定义多列之间的取值约束,则只能在表级完整性约束处定义;第二,如果表的主码由多个列(超过1列)组成,则这样的主码也只能在表级完整性约束处定义,并注意将主码列用括号括起来,即PRIMARY KEY(列1{【,列2】...});第三,如果在表级完整性约束处定义外码,则FOREIGN KEY 和<列名>均不能省略。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
与MySQL的零距离接触
  • 参与学习       396886    人
  • 解答问题       3353    个

本课程涵盖全部MySQL数据库的基础,学习MySQL数据库的基础知识

进入课程

Mysql 约束

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信