社区
MS-SQL Server
帖子详情
如何保持像外键一样的级联更新,但不对它进行删除
zyhtz
2003-10-09 04:34:57
如何做到这样:
两个表中的字段,如何做到能像主键对外键一样保持级联更新
但删除主键的值不对外键的值产生影响
如果设置主键和外键可以设置级联更新,
但不设置级联删除,而希望删除主键里的值但不删除和主键相同的外键的值
这样如果设置主键和外键,则会提示违反约束。
应该如何办到,通过外键好像行不通
...全文
81
10
打赏
收藏
如何保持像外键一样的级联更新,但不对它进行删除
如何做到这样: 两个表中的字段,如何做到能像主键对外键一样保持级联更新 但删除主键的值不对外键的值产生影响 如果设置主键和外键可以设置级联更新, 但不设置级联删除,而希望删除主键里的值但不删除和主键相同的外键的值 这样如果设置主键和外键,则会提示违反约束。 应该如何办到,通过外键好像行不通
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zyhtz
2003-10-10
打赏
举报
回复
不设置级联更新当主键和外键有相同的值时,能删除主键的行?
伍子V5
2003-10-10
打赏
举报
回复
你那样做,不是破坏了数据参照完整性了么
create trigger tr_name on 主表
for update
as
update 从表 set 关联字段=a.关联字段 from inserted a
killxtt
2003-10-09
打赏
举报
回复
晕了,只设置级联更新不设置级联删除就可以达到这个目的了啊,怎么会报错呢,你是不是这个主键表还和另外的表关联了阿
实在不行你就用触发器吧。
看联机丛书的create trigger条目
zyhtz
2003-10-09
打赏
举报
回复
我是想删除主键里的值,但不删除外键里的值,但同时保持级联更新
就是这样
不好意思,刚刚没表达清楚
好像这样不能设置主键和外键
zjcxc
元老
2003-10-09
打赏
举报
回复
仅设置为级联更新就行了.
如果是7.0,就用触发器处理
伍子V5
2003-10-09
打赏
举报
回复
我越来越迷糊了
你不是本来就要求不能级连删除么
干嘛又要删除主键里的记录
zyhtz
2003-10-09
打赏
举报
回复
单设置级联更新,但是删除主键所在行时会出错,它不充许删除主键所在表和外键所在表里共有的行。就是这个值主键表里有,外键所在表里也有,就不能在主键里删除它,当不设置级联删除时
pbsql
2003-10-09
打赏
举报
回复
SQL2000里可只设置级联更新,不设置级联删除
aierong
2003-10-09
打赏
举报
回复
2个表不用利用主外键关系就可以啦
要它们间发生关系,可以利用触发器
伍子V5
2003-10-09
打赏
举报
回复
不会吧,你单设置级连更新也可以嘛
另外可以用触发器
MySQL中的
外键
约束及
级联
删除
级联
删除
是
外键
约束的一种行为,它指的是当对被引用表中的数据
进行
删除
操作时,MySQL将自动
删除
引用该数据的表中的相关数据,从而
保持
数据的一致性。通过定义
外键
约束,我们可以建立表之间的关联关系,并确保数据的完整性。
外键
约束是指在一个表中的一个或多个字段引用了另一个表中的字段,用于建立两个表之间的关联关系。当定义了
外键
约束后,MySQL将确保在
进行
数据操作时,被引用的表中的数据始终存在,并且不会被意外
删除
或修改。需要注意的是,在使用
外键
约束和
级联
删除
时,我们需要谨慎操作,确保不会意外
删除
或修改重要的数据。
简简单单说
外键
和
级联
●
外键
○ 定义 ○ 作用 ○ 主表和从表 ○ 建键原则 ○ 事件触发限制 ●
外键
简单实例 ● 触发器实现 ○ 建表语句 ○ 关系说明 ○ 实现
级联
删除
● 更改设置实现 ● 总结 文首 今天给考试系统添加学生信息失败,原因是student与classes表有
级联
关系,作为从表的student表不能随意添加,这些都学过却还没怎...
在数据库中使用
外键
和
级联
删除
前一阵子写了1个项目,这个项目有ios和android2个版本,都使用了sqlite数据库。数据库内容也不是太复杂,但是我们在操作时没有利用数据库的
级联
删除
等功能,导致代码复杂,现在分析一下。 比如系统需要2个表,表Person表示人的信息, 包含personID,personName, 表Treatement表示治疗方案,包含用药名称,用药剂量,用药时间。一个人可以对应多个治疗方案。 以下...
数据库__SQL的主键和
外键
约束_
级联
更新
_
级联
删除
SQL的主键和
外键
的作用:
外键
取值规则:空值或参照的主键值。 (1)插入非空值时,如果主键表中没有这个值,则不能插入。 (2)
更新
时,不能改为主键表中没有的值。 (3)
删除
主键表记录时,你可以在建
外键
时选定
外键
记录一起
级联
删除
还是拒绝
删除
。 (4)
更新
主键记录时,同样有
级联
更新
和拒绝执行的选择。 简而言之,SQL的主键和
外键
就是起约束作用。
外键
约束和
级联
操作
说到
级联
删除
不得不先说一下
外键
,
外键
的定义:“如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的
外键
;换而言之,如果关系模式R中的某属性集不是R的主键,而是另一个关系R1的主键则该属性集是关系模式R的
外键
”。 建立
外键
的sql语句: [sql] view plaincopy foreign key(idB) references A(idA) ...
MS-SQL Server
34,588
社区成员
254,588
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章