mysql之非空约束,唯一约束,外键约束

非空约束:是指 某些列不能设置为NULL值,所以要对列添加非空约束

非空约束的特点:不可以为空,但可以是重复值

NOT NULL  是非空约束的关键字

CREATE TABLE student (
sid INT PRIMARY KEY AUTO_INCRAMENT,
sname VARCHAR(50)  NOT NULL,   
age   INT
);

设置sname为非空约束

唯一约束:某些列不能添加重复值,所以对列进行唯一约束

唯一约束的关键词是:UNIQUE

CREATE TABLE student (
sid INT PRIMARY KEY AUTO_INCRAMENT,
sname VARCHAR(50)  NOT NULL UNIQUE,   
age   INT
);

设置sname为非空唯一约束

外键约束: 

外键约束的特点:外键列可重复,可以为NULL,外键列必须是另一个表的主键值

CONSTRAINT  外键名(一般是fk_从表名_主表名)FOREIGN  KEY (外键值)   REFERENCE  引用的表名(主键值);

CREATE TABLE emp(
empno  INT  PRIMARY KEY AUTO_INCREMENT,
ename   VARCHAR(50),
eno    INT, 
CONSTRAINT  fk_emp_dept   FOREIGN  KEY  (eno)  REFERENCE dept (deptno)
);

eno为外键

修改外键:

ALTER TABLE 表名
ADD  CONSTRAINT      外建名  FOREIGN KEY  (外键值)   REFERENCE   医用的表名(引用表的主键值);

删除主键:

ALTER   ALTABLE  表名

DROP  FOREIGN  KEY  外建名;

猜你喜欢

转载自blog.csdn.net/Gray_humor/article/details/81278804