天天看点

外键约束|学习笔记外键约束

开发者学堂课程【SQL进阶及查询练习:外键约束】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址: https://developer.aliyun.com/learning/course/36

外键约束

一:外键约束

*外键必须是另一表的主键的值

*外键可以重复

*外键可以为空

概念模型在数据库中成为表

数据库表中的多对一关系,只需要在多方使用一个独立的列来引用1方的主键即可

/*员工表*/

create talbe emp

empno int primary key,/·员工编号*/

deptno in/*所属部门的编号*/

SELECT * FROM emp:

INSERT INTO emp VALUES (2,'l1s1);

SELECT*FROM emp;

CREATE TABLE dept(

deptno INT PRIMARY KEY AUTO INCREMENT

dname VARCHAR (50)

);

INSERT INTo dept VALUES(10,"研发部");

INSERT INTo dept VALUES(20,'人力部)

INSERT INTo dept VALUES(30,'账务部);

SELECT FROM dept:

CREATE TABLE emp(

empno INT PRIMARY KEY AUTO INCREMENT

ename VARCHAR (50)

Dno  INt,

CONSTRAINT fk emp dept FOREIGN KEY(dno) REFERENCES dept (deptno)

DROP TABLE  emp:

INSERT INTo  emp(empno, ename)  VALUES (NULL,IzhangSan'):

INSERT INTO  emp(empno, ename, dno)  VALUES (NULL, 'liSi,10);

INSERT INTo  emp(empno, ename, dno) VALUES  (NULL, 'wangwu, 10):

INSERT INTO emp(empno, ename, dno) VALUES(NULL, 'zhaoLiu', 80);

SELECT * FROM emp;

ALTER TABLE emp

ADD CONSTRAINT fk emp dept FOREIGN KEY (dno) REFERENCES dept (deptno)