gpt4 book ai didi

sql-server - SQL Server 2005 级联删除

转载 作者:行者123 更新时间:2023-12-03 02:03:24 26 4
gpt4 key购买 nike

我不是 100% 确定级联删除是如何工作的。

为了简单起见,我有如下所示的表格

用户用户ID

扩展用户用户ID

评论用户 ID

帖子用户ID

我基本上有大量的表引用了 User 的 User_ID。我想在一张表上设置级联删除,以便删除 User 对象并确保删除引用 User 的所有表。

但是,我的理解是我需要在引用 User 的每个表上设置删除操作。也就是说,我需要在每个子表上设置“级联删除”。我的理解正确吗?

SQL Server Cascading

更新:看来我必须为每一个关系设置它。我应该将这些关系“存储”在哪里?也许我的观念不对。

看起来我可以使用父表中的管理工作室为每个关系设置所有引用完整性规则。

最佳答案

对于每个关系,您可以指定要采取的操作。

管理此问题的最简单方法可能是使用 SQL Server Management Studio。设计您的父表,并找到所有 PK-FK 关系。

对于每个事件,选择发生删除事件时要采取的路径:

  • 无操作 - 发生时会导致 FK 错误
  • 级联 - 删除子记录
  • 设置 null - FK 列值将为 null。当子表中不允许使用空值时,这显然会引发错误。
  • 设置默认值 - 如果子表上的 FK 列有默认值,则它将成为子列中的新值。

enter image description here

关于sql-server - SQL Server 2005 级联删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4994587/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com