您好,欢迎访问一九零五行业门户网

MySQL中数据的约束

今天说说数据库中的数据表数据约束问题,约束大概分为主键约束,外键约束,默认约束,唯一约束,非空约束这几种,关于讲解配置,我后面慢慢说 1、主键约束 其实是用来唯一标示表中的一个列或多个列,但是一个表中必须唯一,配置方法 (1)、初始化列级主键约
今天说说数据库中的数据表数据约束问题,约束大概分为主键约束,外键约束,默认值约束,唯一约束,非空约束这几种,关于讲解配置,我后面慢慢说
1、主键约束
其实是用来唯一标示表中的一个列或多个列,但是一个表中必须唯一,配置方法
(1)、初始化列级主键约束
create table custominfo(id int primary key,name varchar(12),age int);
(2)、初始化表级主键约束create table custominfo(id int,name varchar(12),age int,primary key(id));
(3)、修改主键约束alter table customerinfoadd constraint yueshu primary key(id);
(4)、修改添加联合主键约束alter table customerinfoadd constraint yueshu primary key(id,name);
(5)、删除主键约束alter table customerinfodrop primary key;
2、外键约束比如某个表b关联于表a,也就是表a中所有项目表b中都有,就可以设置表a主键关联,表b外键关联
(1)初始化添加
create table typeinfo(typeid int primary key,type varchar(20));create table roominfo(roomid int primary key,type varchar(20),price intconstraint yueshu foreign key(roomid) references typeinfo(typeid));
(2)、修改添加alter table roominfoadd constraint yueshu foreign key(roomid) references typeinfo(typeid);
(3)、删除外键约束alter table roominfodrop foreign key yueshu;
3、默认值约束将某一数据初始化为固定值
(1)、初始化设置
create table roominfo(id int,name varchar(20),price int default 0);
(2)、修改添加设置alter table roominfoalter price set default 0;
(3)、删除默认约束alter table roominfoalter price drop default;
4、非空约束某项数据不得为空的约束
(1)、初始化设置
create table roominfo(id int not null,name varchar(20));
(2)、修改设置alter table roominfoalter id int not null;
5、检查约束
就是固定行规定数据的范围
(1)、初始化列级设置
create table roominfo(id int,name varchar(20),price int check(price>=0));












(2)、初始化表级设置create table roominfo(id int,name varchar(20),price int,check(price>=0));




(3)、修改设置alter table roominfoadd constraint yueshu check(price>=0);
6、唯一约束(1)、初始化列级唯一约束
create table roominfo(id int unique,name varchar(20));
(2)、初始化表级唯一约束create table roominfo(id int,name varchar(20),unique(id));
可以设置多个独立唯一约束(3)、初始化创建共同唯一约束
create table roominfo(id int,name varchar(20),price int,unique(id,name));
(4)、修改设置独立唯一约束alter table roominfoadd constraint yueshu unique(id);
(5)、修改设置共同唯一约束alter table roominfoadd constraint yueshu unqiue(id,name);
(6)、删除唯一约束drop index yueshu on roominfo;
其它类似信息

推荐信息