永发信息网

请简述什么是外键约束

答案:1  悬赏:70  手机版
解决时间 2021-02-08 14:19
请简述什么是外键约束
最佳答案
问题一:什么是外键约束 如果表A的主关键字是表B中的字段,则该字段称为表B的外键,表A称为主表,表B称为从表。外键是用来实现参照完整性的。
比如说:
create table t_group ( id int not null,
name varchar(30),
primary key (id)
);
insert into t_group values (1, 'Group1');
insert into t_group values (2, 'Group2');
create table t_user (
id int not null,
name varchar(30),
groupid int,
primary key (id),
foreign key (groupid) references t_group(id) on delete cascade on update cascade
);
insert into t_user values (1, 'qianxin', 1); --可以插入
insert into t_user values (2, 'yiyu', 2); --可以插入
insert into t_user values (3, 'dai', 3); --错误,无法插入,用户组3不存在,与参照完整性约束不符
insert into t_user values (1, 'qianxin', 1);
insert into t_user values (2, 'yiyu', 2);
insert into t_user values (3, 'dai', 2);
delete from t_group where id=2; --导致t_user中的2、3记录级联删除
update t_group set id=2 where id=1; --导致t_user中的1记录的groupid级联修改为2
--------------------虽然很基础,但这篇文章讲的很好很清楚----------------
参考资料:qianzui.javaeye.com/blog/552878问题二:简述外键约束的功能和建立方法 1.外键的作用,主要有两个:
一个是让数据库自己通过外键来保证数据的完整性和一致性
一个就是能够增加ER图的可读性
2.外键的配置
1)先创建一个主表,代码如下:
#创建表student,并添加各种约束
create table student
(
id int primary key , #主键约束
name varchar(20) , #唯一约束
age int NOT NULL, #非空约束
sex varchar(2) ,
address varchar(20) default '重庆' #默认约束
) ;问题三:什么是外键 外键(Foreign Key)   如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间的联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字。换而言之,如果关系模式R中的某属性集不是R的主键,而是另一个关系R1的主键则该属性集是关系模式R的外键,通常在数据库设计中缩写为FK。
外键的作用
保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。 使两张表形成关联,外键只能引用外表中的列的值或使用空值问题四:外键约束的特点是什么 10分外键是用来实现参照完整性的,
不同的外键约束方式将可以使两张表紧密的结合起来,
做外键首先它要是表的主键问题五:外键约束到底有什么用 外键是表中的一个列,其值必须在另一个表的主键中列出。外键主要作用是保证数据引用的完整性,定义外键后,不允许删除在另一个表中具有关联行的行。 比如,有一个客户表a,一个订单表B:客户ID为表A的主键,每个客户都有唯一的ID号问题六:什么叫做外键约束????不太明白 举个简单的例子
表A内有列C1
表B内有列C2
将C2的外键指向C1
那么当你向表B插入数据时,C2的内容必须为C1中的一个
还有几个约束需要你设置
如删除或者修改表A中的字段时怎么处理表B中相关联的数据问题七:sql外键约束的作用是什么?求答案 建立外键的作用就是保证数据的完整性,就如同表A里有主键aa字段,表B里有bb字段,当A为主表,B为从表时,主表的主键就是从表的外键,也就是说B表里的bb字段的取值要来自A表里的aa字段。限制约束,以达到数据上的完整问题八:外键约束是怎么使用的 create table t1(A1 int primary key)create table t2(B1 int,B2 int)--对t2表的B2创建外键(关联字段t1表的A1字段)alter table t2 add constraint FK_B2_t1A1 foreign key(B2) references t1(A1)--注意:能作为一个表的外键关联字段(t1.A1)这个字段必须是主键或有唯一约束的(t1的A1必须是主键或者unique)问题九:创建外键约束的步骤 -- 创建测试主表. ID 是主键.CREATE TABLE test_main ( id INT NOT NULL, value VARCHAr(10), PRIMARY KEY(id) );-- 创建测试子表. CREATE TABLE test_sub ( id INT NOT NULL, main_id INT , value VARCHAr(10), PRIMARY KEY(id) );-- 插入测试主表数据.INSERT INTO test_main(id, value) VALUES (1, 'ONE');INSERT INTO test_main(id, value) VALUES (2, 'TWO');-- 插入测试子表数据.INSERT INTO test_sub(id, main_id, value) VALUES (1, 1, 'ONEONE');INSERT INTO test_sub(id, main_id, value) VALUES (2, 2, 'TWOTWO');-- 创建外键ALTER TABLE test_sub ADD CONSTRAINT main_id_cons FOREIGN KEY (main_id) REFERENCES test_main;go-- 验证外键是否生效1> DELETE2> test_main3> WHERe4> ID = 1;5> go消息 547,级别 16,状态 1,服务器 HOME-BED592453C\SQLEXPRESS,第 1 行DELETE 语句与 REFERENCE 约束main_id_cons冲突。该冲突发生于数据库Stock,表dbo.test_sub, column 'main_id'。语句已终止。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
铭妆馆地址有知道的么?有点事想过去
冬天煤气罐放气时罐底为啥会有雪?放气为了搬
武状元苏乞儿里比武场上蒙古人是谁演的大神们
舒心休闲吧这个地址在什么地方,我要处理点事
为什么义乌人都这么讨厌,也这么看不起外地的
自卸车液压缸下降时发响
力易得宾馆地址在哪,我要去那里办事
美颜店地址在哪,我要去那里办事
除湿机是不是插上管水箱就不出水了
为什么一样的图片用看图王保存要比PS保存要小
保险金额计算问题。
如何验证购买的机械键盘?
女人花地址好找么,我有些事要过去
南通市港闸区商贸局我想知道这个在什么地方
包河区银杏苑社区蔬菜直销店地址在哪,我要去
推荐资讯
永兴通讯批发部怎么去啊,有知道地址的么
关于龙年的春联(带有龙字)还要有横批
职业生涯目标分析包括目标的选择、分解、组成
什么牌子的电动车电池保三年
夏天怎么腌制酸菜
外坝地址在哪,我要去那里办事
羽诗健康美容生活馆地址在哪,我要去那里办事
我E盘的文件夹全都不见了.取消隐藏也看不见.
比比皆是的意思是
【日语辞典】《日本语句型辞典》这本书怎么样
一个长方形与一个正方形周长相等,如果正方形
在2008年3月召开的全国“两会”上,上海、广
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?