开发中,每个表有且只有一个主键
主键的特点 ①唯一,②不能为空
主键引入的方式
1 方式一:创建表时,在字段描述处,声明指定字段为主键:
CREATE TABLE p1(
id int primary key,
name varchar(200)
)
2 方式二:创建表时,声明指定字段为主键:
格式:primary key (字段)
CREATE TABLE p2(
id int,
name varchar(200),
primary key(字段)
)
3 联合主键:多个字段共同作为主键,单个字段的值可以重复,联合起来的值不能重复
格式:primary key (字段1,字段2),不可采用方式一设置联合主键,只能采用方式二和方式三
CREATE TABLE p2(
id int,
name varchar(200),
primary key(字段1,字段2)
)
删除主键
ALTER TABLE 表名 DROP PRIMARY KEY;
非空约束
NOT NULL 约束强制列不接受 NULL 值。
NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。
例:下面的 SQL 语句强制"name" 列不接受 NULL 值:
CREATE TABLE p4(
id int,
name varchar(200) not null,
idCard varchar(50)
)
自动增长
我们可以在表中使用 auto_increment(自动增长列)关键字,自动增长列类型必须是整形,自动增长列必须为键
CREATE TABLE p7(
id int PRIMARY KEY auto_increment,
name varchar(200),
idCard varchar(50)
)
默认值约束 default
CREATE TABLE student(
id int primary key,
name varchar(50) not null,
gender varchar(10) default ‘男’
);