资讯详情

MySQL约束

主键约束(primary key) PK

自增长约束(auto_increment)

非空约束(not null)

唯一性约束(unique)

默认约束(default)

零填充约束(zerofill)

外键约束(foreign key) FK


主键约束(primary key) PK

create table emp1(     eid int primay key,     name VARCHAR(20),     deptId int,     salary double ); 
#-定义字段后指定主键,语法格式如下: #create table 表名( #   ... #   [constraint <约束名>] primary key [字段名] #); create table emp2(     eid INT,     name VARCHAR(20),     deptId INT,     salary double,     constraint  pk1 primary key(id)  ); 

联合主键

create table emp3(    name varchar(20),    deptId int,    salary double,    primary key(name,deptId)  ); 

在修改表中添加主键

-- 添加单列主键 create table emp4(   eid int,    name varchar(20),    deptId int,    salary double,  ); alter table emp4 add primary key(eid); 

删除主键

-- 删除单列主键  alter table emp1 drop primary key;   -- 删除联合主键  alter table emp5 drop primary key; 

自增长约束(auto_increment)

create table t_user1(    id int primary key auto_increment,    name varchar(20)  ); 

指定自增字段的初始值

-- 方法1:创建表时指定 create table t_user2 (    id int primary key auto_increment,    name varchar(20) )auto_increment=100; 
-- 方法2,创建表后指定 create table t_user3 (    id int primary key auto_increment,    name varchar(20) );  alter table t_user2 auto_increment=100;

非空约束(not null)

-- 方法1:创建表时指定 create table t_user6 (    id int ,    name varchar(20) not null,    address varchar(20) not null  ); 
-- 方式2 create table t_user7 (    id int ,    name varchar(20) , -- 指定非空约束    address varchar(20) -- 指定非空约束  );  alter table t_user7 modify name varchar(20) not null;  alter table t_user7 modify address varchar(20) not null; 

删除非空约束

-- alter table 表名 modify 字段 类型  alter table t_user7 modify name varchar(20) ;  alter table t_user7 modify address varchar(20) ; 

唯一性约束(unique)

-- 创建表时指定 create table t_user8 (   id int ,   name varchar(20) ,   phone_number varchar(20) unique -- 指定唯一的约束  ); 
create table t_user9 (    id int ,    name varchar(20) ,    phone_number varchar(20) -- 指定唯一的约束  );  alter table t_user9 add constraint unique_ph unique(phone_number); 

删除唯一的约束

-- alter table <表名> drop index <唯一约束名>; alter table t_user9 drop index unique_ph; 

默认约束(default)

create table t_user10 (    id int ,    name varchar(20) ,    address varchar(20) default ‘北京’ -- 指定默认约束  ); 
-- alter table 表名 modify 列名 类型 default 默认值;   create table t_user11 (    id int ,    name varchar(20) ,    address varchar(20)   ); alter table t_user11 modify address varchar(20) default  ‘北京’; 

删除默认约束

-- alter table <表名> modify column <字段名> <类型> default null;   alter table t_user11 modify column address varchar(20) default null; 

零填充约束(zerofill)

create table t_user12 (    id int zerofill , -- 零填充约束   name varchar(20)    ); 

删除

alter table t_user12 modify id int; 

外键约束(foreign key) FK

Create table students(

id int primary key,

name varchar(20),

class_id int,

foreign key(class_id) references classes(id)(class_id必须来自classes表中的id值)

);

标签: pk1接近传感器sc1204

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台