数据库主外键和五大约束

1.主键

主键默认非空,默认唯一性约束,只有主键才能设置自动增长,自动增长一定是主键,主键不一定自动增长。

如何设置主键?

在定义列时设置:ID INT PRIMARY KEY
在列定义完之后设置:primary KEY(id)

2.外键

2.1设置外键时的注意事项:

只有INNODB的数据库支持外键,修改my.ini文件设置default-storage-engine=INNODB 外键必须与参照列的数据类型必须相同(数值型要求长度和符号都相同,字符串要求类型相同,长度可以不同)。

2.2设置外键的语法

alter table 表名 add constraint 自定义外键名
foreign key(外键字段)
references 关联表名(关联字段);

举例:

在创建完表之后添加添加外键:

语法:
alter table 表名 add constraint 自定义外键名
foreign key (外键字段)
references 关联表名(关联字段);

示例:
添加外键: Score 表中的 SubjectId字段 关联 Subject 表的 SubjectId 字段

alter table Score add constraint score_subject
foreign key(SubjectId)
references Subject(SubjectId);

创建表时添加外键:

– 父表
create table if not exists father_table(
test_field1 int(4) primary key
)charset=‘utf8mb4’;

– 子表
create table if not exists child_table(
test_field1 int(4),
foreign key(test_field1) references father_table(test_field1)
)charset=‘utf8mb4’;

注意:

1.外键值可以为null
2.外键字段在引用一张表的某个字段的时候,被引用的字段必须具有unique(唯一性)约束。

3.有了外键引用后,表分为父表和子表,引用的表为父表,被引用的表为子表

创建时先创建父表
删除时先创建子表
插入时先插入父表数据

3.五大约束

1.primary KEY:设置主键约束;

2.UNIQUE:设置唯一性约束,不能有重复值;

3.DEFAULT 默认值约束,height DOUBLE(3,2)DEFAULT 1.2
height不输入是默认为1,2

4.NOT NULL:设置非空约束,该字段不能为空;

5.FOREIGN key :设置外键约束。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值