表的约束(个人笔记,持续更新ing)

表级约束:可以约束表中任意一个或多个字段。主键是多列的只能用表级。

create table student2 (
stu_id int(10),
stu_name varchar(3),
stu_sex varchar (1),
constraint pk_stu_id primary 
key(stu_id)
);

列级约束:只能约束其所在的某一个字段。主键是单一列可使用列级,也可使用表级。

#列级约束
create table student1 (
stu_id int(10) primary key,
stu_name varchar(3),
stu_sex varchar (1)
);

主键约束:作用是约束表中的某个字段可以唯一标识一条记录。不能为空、不能重复。

表级约束:

create table 表名(
字段名1 字段类型,
字段名2 字段类型,
......,
[constraint pk_name] primary key(要设置为主键的字段名)
);
#constraint:设置主键约束标识符所用到的关键字。
#pk_name:主键标识符。
#为了方便删除和修改完整性约束,可以对完整性约束进行命名。

为多个字段添加主键约束

create table grade(
stu_id int(10),
course_id int(4),
score smallint(2),
primary key(stu_id, course_id)
);

在已存在的表中添加主键约束

alter table 表名 add [constraint 主键标识符] primary key(字段名1, 字段名2, ···);

删除主键约束

alter table 表名 drop primary key;
#备注:因为一个表中的主键只能有一个,故不需要指定被设为主键的字段名。

唯一约束

它规定了一张表中指定的某个字段的值不能重复

create table 表名(
字段名 字段类型 unique,
......
);

在已有的表中添加唯一约束

alter table 表名 add [constraint 唯一约束名] unique(字段名1, 字段名2, ···);

删除唯一约束

alter table 表名 drop index 字段名;

非空约束:nut null(使用方法和unque一样)

删除方法

alter table 表名 modify字段名 字段类型 [null];

默认值约束:可在建表时直接加在字段后为default" "

alter table student11 modify name varchar(3) default '学生';

删除默认值约束

alter table 表名 modify 字段名 字段类型;

自增约束

create table 表名(
字段名 字段类型 auto_increment,
......
);  

在已存在的表中添加自增约束

alter table 表名 modify 字段名 字段类型 auto_increment;

删除自增约束

alter table table_name modify column_name date_type;
上一篇:【学习ING】计量经济学系列之导论


下一篇:语法学浅知(二)