标签:name 一个 user 约束 就删除 children usr reference 表数据
唯一确定一张表的记录,给某个字段添加约束就可以确认它不为空且唯一
在定义的参数后添加 primary key
create table user( id int(20) primary key, name varchar );
--联合主键 任意一个不为空即可--
create table user(
id int(20) ,
name varchar,
primary key(id,name)
) ;
可以通过
alert table user add primary key(id);
添加主键约束
可以通过
alert table user drop primary key(id);
删除主键约束
可以通过
alert table user modify id int primary key;
添加主键约束
在参数后面加入 auto_increment
create table usr( id int(20) primary key auto_increment, name varchar );
牵扯到两个表一个子表一个父表,用来做关联
foreign key()references 表名 ()
create table father( id int primary key, name varchar(20) ); create table children( id int primary key, name varchar(20) foreign key (id) references father(id) );
主表没有数据值时,副表不可以添加
例如
主表
insert into father Value("1","father1")
副表
insert into children Value("2","children1")
插入失败 因为id为2在主表找不到,正确的话只能设置为1
主表中的数据被引用时,主表数据是不可以删除的
例如
上面的例子要删除主表的数据id等于1是可以的 但是如果副表插入一条数据
insert into children value(“1”,“children”)
这样主表就删除不了数据了
修饰该字段不可以重复
alert table user add unique(id); create table user( name varchar(20) unique );
唯一约束其中一个不重复即可 create table user( name varchar(20),
id int, unique(name,id) );
值不能传空
not null
和上述的约束用法相似
插入没有传值就会传默认值
default + 默认值
和上述的约束用法相似
标签:name 一个 user 约束 就删除 children usr reference 表数据
原文地址:https://www.cnblogs.com/wazy999/p/12776265.html