社区
MS-SQL Server
帖子详情
逻辑问题-外键约束
mohugomohu
2008-01-04 09:16:32
有一个关于协会的数据库,里面有会员表,主键是"ID".
有个活动表,里面有个"负责人ID",跟会员表里的"ID"有外键约束,这样就能从会员表查到是谁负责的活动.
可是由于这两个表有关联,所以删除不了跟活动表有关联的会员.
这不合逻辑啊,有人退出协会,自然要删除这个会员的信息,可是因为他负责有活动(跟活动表里的负责人ID有关联),所以删除不了,怎么解决呢?
...全文
89
8
打赏
收藏
逻辑问题-外键约束
有一个关于协会的数据库,里面有会员表,主键是"ID". 有个活动表,里面有个"负责人ID",跟会员表里的"ID"有外键约束,这样就能从会员表查到是谁负责的活动. 可是由于这两个表有关联,所以删除不了跟活动表有关联的会员. 这不合逻辑啊,有人退出协会,自然要删除这个会员的信息,可是因为他负责有活动(跟活动表里的负责人ID有关联),所以删除不了,怎么解决呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cxmcxm
2008-01-05
打赏
举报
回复
如果想保留此人的活动记录,给会员表加个是否已退会的字段,如果不想保留活动记录,可设置级联删除,删除会员时同时删除与其相关的活动记录.
也可考虑将外鍵去掉,相关的规则检查在前台程序实现.
火星求索
2008-01-05
打赏
举报
回复
加一个标识字段,
由于数据的重要性,在实际项目中也基本上没有真删的,只是给一个标识至为0,1
删除时更新字段就可以了,如楼主所遇真删会有很多问题
Bytexu
2008-01-05
打赏
举报
回复
不建议直接删除用户表,这样会导致很多关于该用户的信息都丢失了,这会导致很多问题,例如:日后如果这个活动如了问题也不知道该找谁。标准的做法是添加一个字段,用于表示用户的状态。
wxxloveu
2008-01-05
打赏
举报
回复
数据备份不就好了,或者再建个表把删除的记录记下来
hui_hui_2007
2008-01-05
打赏
举报
回复
其实级联删除,在实际用总感觉有点不放心,因为历史数据有时很重要,宁可有,不可无呀.
lxzm1001
2008-01-04
打赏
举报
回复
给他多加一个字段做为删除的标记
OracleRoob
2008-01-04
打赏
举报
回复
设置级联删除
wxxloveu
2008-01-04
打赏
举报
回复
建立一个触发器,作用是删除关联的表里的数据,都不是会员了,就不能是负责人
sql
外键约束
4. **业务规则**:
外键约束
可以作为业务
逻辑
的一部分,限制某些操作,如防止非法的用户操作,确保数据遵循特定的业务规则。 在SQL Server中创建
外键约束
的语法如下: ```sql ALTER TABLE child_table ADD ...
MySQL数据库中的
外键约束
详解.doc
而当需要确保数据之间的
逻辑
关系不被破坏时,
外键约束
就显得尤为必要。
外键约束
是一种特殊的约束,通过它可以强制表之间的关系,并防止数据的不一致。它通常用于建立表之间的父子关系,即一对多的关系。例如,在一...
MYSQL 数据库给表加
外键约束
条件 (史上最详细教程)
在MySQL数据库中,
外键约束
是用于建立和维护两个表之间关系的重要机制。它确保了数据的一致性和完整性,特别是当涉及到一对多或多对多的关系时。在本教程中,我们将详细介绍如何在已有的数据表中添加
外键约束
。 ...
聊聊Oracle
外键约束
的几个操作选项
外键约束
的作用,是保证字表某个字段取值全都与另一个数据表主键字段相对应。也是说,只要
外键约束
存在并有效,不允许无参照取值出现在字表列中。具体在Oracle数据库中,
外键约束
还是存在一些操作选项的。本篇主要从...
违反完整性约束 未找到父项关键字
2. **检查违反
外键约束
的
问题
数据**: 上述代码片段提供了一个名为`P_CON_ERR`的过程,用于找出违反
外键约束
的具体数据行。下面详细解释这一过程的工作原理及使用方法: - **过程定义**:此过程接受一个参数`as_...
MS-SQL Server
34,838
社区成员
254,632
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章