1、外键是属于约束的一种,所谓约束顾名思义,就是限制你在数据库的操作。而你对数据库有什么操作,无非是增、删、改、查,外键起的作用就是让你在数据库帮助的情况下更合理的增加数据的正确度。
创新互联专注于银州企业网站建设,响应式网站开发,电子商务商城网站建设。银州网站建设公司,为银州等地区提供建站服务。全流程按需求定制设计,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
2、所以,外键只是辅助,并不能起到你说的【B.NAME是否也自动出现张三两个字】。
3、外键的作用是能够避免如下情况。
如
【班级信息表】存放的是班级信息表。
【学生表】存放的是学生信息,包含班级信息。
这个时候 在【学生表】中存放的班级信息应该在【班级信息表】存在才合法,自己人为控制的话难免有漏掉的情况,用外键则可以让数据库自动控制,当插入【学生表】中的数据在【班级信息表】不存在的时候,数据库不允许插入。
---
以上,希望对你有所帮助。
create TABLE zhao(\x0d\x0a id number primary key,\x0d\x0a mingcheng nvarchar2(50),\x0d\x0a neirong nvarchar2(50),\x0d\x0a jiezhiriqi date,\x0d\x0a zhuangtai nvarchar2(50)\x0d\x0a);\x0d\x0acreate TABLE tou(\x0d\x0a id number primary key,\x0d\x0a zhao_id number,\x0d\x0a toubiaoqiye nvarchar2(50),\x0d\x0a biaoshuneirong nvarchar2(50),\x0d\x0a toubiaoriqi date,\x0d\x0a baojia number,\x0d\x0a zhuangtai nvarchar2(50),\x0d\x0a foreign KEY(zhao_id) REFERENCES zhao(id)\x0d\x0a);\x0d\x0aforeign key (zhao_id) references to zhao(id)\x0d\x0a多了个to
以oracle自带的用户scott为例。
create table dept(
deptno number(2) primary key, --deptno 为 dept表的主键
dname varchar2(10),
loc varchar2(9)
);
create table emp(
empno number(4) primary key, --empno 为 emp表的主键
ename varchar2(10),
job varchar2(9),
mgr number(4),
hiredate date,
sal number(7,2),
comm number(7,2),
deptno number(2) references dept(deptno) --dept表中deptno字段 为 emp表的外键
);
主键:ALTER TABLE A ADD CONSTRAINT PK_XXX PRIMARY KEY (XXX)
外键;ALTER TABLE B ADD CONSTRAINT FK_YYY FOREIGN KEY(YYY) REFERENCES A(XXX)
B表的YYY字段 引用A表的XXX字段值域为自身值域
主键约束,外键约束就是这样建立的
删除约束: ALTER TABLE A DROP CONSTRAINT 约束名