江哥MySQL视频学习笔记-第06章 MySQL数据完整性-29-MySQL-实体完整性(掌握)

1、自动增长约束(auto_increment)

自动增长约束的作用是让某个字段的取值从1开始递增,从而保证实体完整性

例如:

create table if not exists person_auto_increment(
    id int auto_increment,
    name varchar(20)
);

运行上述语句会报错:

Incorrect table definition; there can be only one auto column and it must be defined as a key

注意点:

如果某个字段是自动增长的,那么这个字段必须是主键才可以

create table if not exists person_auto_increment(
    id int primary key auto_increment,
    name varchar(20)
);

插入记录

insert into person_auto_increment values(1,'lly');
insert into person_auto_increment values(null,'lly');
insert into person_auto_increment values(default,'lly');

如果仅仅是主键,那么取值不能是null,但是如果主键还是自动增长的,那么取值就可以是null或者default

 

在企业开发中我们应该如何选择主键

最少性:能用一个字段作为主键,就不要使用多个字段

稳定性:能用不被操作(修改)的字段作为主键,就不要使用会被操作的字段作为主键

一般情况下我们会定义一个名称叫做id的字段,并且这个字段是整型的,并且这个字段是自动增长的来作为主键

 

你可能感兴趣的:(江哥MySQL视频学习笔记-第06章 MySQL数据完整性-29-MySQL-实体完整性(掌握))