数据库的两个表通过主键和外键相关联如果修改其中表的数据会不会自动修改另一个表的数据啊?

 我来答
百度网友d43476d4321
推荐于2017-09-24 · 超过29用户采纳过TA的回答
知道答主
回答量:54
采纳率:100%
帮助的人:63.7万
展开全部
现有俩表A,B,A表有主键,B表建立外键关联到A表
修改A表,若修改之后的结果是B表外键字段的值在A表中找不到了,则会报错,不允许进行此修改,其他情况可以任意修改。
修改B表,必须保证修改后B表外键字段的值依然能在A表中找到,否则会报错。
俩表自己的修改,只会影响自己表的数据,对其他表无影响。
ch...1@163.com
2014-05-08 · 超过20用户采纳过TA的回答
知道答主
回答量:51
采纳率:100%
帮助的人:45.3万
展开全部
不会,应该只是对抽出数据有影响。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
灏忓嚒馃帎
2019-11-09
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部
SQL Server
可以通过
ON UPDATE CASCADE
的选择, 使得 更新主表的主键时候,同时更新子表外键

-- 创建外键(使用 ON UPDATE CASCADE 选项,更新主表的主键时候,同时更新子表外键)
1> ALTER TABLE test_sub
2> ADD CONSTRAINT main_id_cons
3> FOREIGN KEY (main_id) REFERENCES test_main ON UPDATE CASCADE;
4> go

-- 测试更新主表数据. 将成功地执行.
1> UPDATE test_main SET id = 5 where id = 1
2> go
(1 行受影响)

-- 检查 子表 数据是否被同步更新
1> select * from test_sub
2> go

id main_id value
----------- ----------- ----------
1 5 ONEONE
2 2 TWOTWO

-----

Oracle 数据库, 不支持
ON UPDATE CASCADE
你只能自己想办法, 用触发器来处理了.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式