T-SQL:DROP 表级联约束等效吗?

2024-04-03

在 Oracle 中,我可以发出 DROP TABLE ... 级联约束,它不会抱怨 FK 等。

T-SQL 中有等效的吗?


对于那些希望获得更普遍适用的答案的人

这将找到约束,删除它,然后删除列

感谢蒂姆·伦汀并投票如何查找默认约束的名称 https://stackoverflow.com/questions/141682/how-do-i-find-a-default-constraint-using-information-schema首先。

Declare @sql VarChar(255)
Declare @tableName Varchar(255)
Declare @columnName VarChar(255)
Select @tableName = 'MyTableName'
Select @columnName = 'MyColumnName'
select @sql = o.[name] from sysobjects o 
inner join syscolumns c
on o.id = c.cdefault
inner join sysobjects t
on c.id = t.id
where o.xtype = 'd'
and t.name = @tableName
and c.name = @columnName

if @sql is not null
begin
  select @sql = 'Alter Table ' + @tableName + ' Drop Constraint ' + @sql + ' Alter Table ' + @tablename + ' Drop Column ' + @columnName
  exec(@sql)
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

T-SQL:DROP 表级联约束等效吗? 的相关文章

  • 如何从 T-SQL 中的“/”分隔字符串中获取几乎最后一个子字符串?

    如果我有一个由用 字符分隔的其他字符串 xxx xxx xxx xxxx 组成的字符串 如何使用 t sql 获取最后一个和几乎最后一个 最后一个之前的 部分 它可能应该是 charindex 和 right 的某种组合 declare s
  • 如何在 SQL Server 2000 中传递大于 varchar(8000) 的字符串参数?

    如果将字符串参数定义为大小大于 8000 则会出现编译错误 e g The size 9000 given to the type varchar exceeds the maximum allowed for any data type
  • 为什么 T-SQL 块即使不应该执行也会给出错误?

    我正在编写一个 看似 直接的 SQL 片段 它在确保列存在后删除该列 问题 如果该列不存在 则代码insideIF 子句抱怨它找不到该列 出色地 doh 这就是为什么它位于 IF 子句内 所以我的问题是 为什么一段不应该执行的代码会出错 这
  • 如何找到一组值的精确匹配?

    我有一个简单的表来存储师生关系 以显示学生正在上谁的课或老师正在教谁 无论哪种方式 为便于阅读 按老师排序 CREATE TABLE TS RELATIONSHIP Teacher NVARCHAR 10 Student NVARCHAR
  • 是否可以使用不在 GROUP BY 中的 ORDER BY 列?

    正如标题所说 这是我的代码 SELECT material SUM Amount AS Amount RIGHT CONVERT varchar 50 date in 106 8 FROM rec stats GROUP BY materi
  • 搜索并替换字符串 t-SQL

    每个人我都试图编写一个查询来替换末尾出现的所有字符串 我有一些干扰词 确切地说是 104 个 如果它们出现在字符串末尾 则需要将其从字符串中删除 例如 两个干扰词是 Company LLC 以下是一些示例和预期输出 American Com
  • 替换 Select 语句中的 NULL 和空字符串

    我有一个专栏可以有NULL或空白区域 即 值 我想用有效值替换这两个值 例如 UNKNOWN 我发现的各种解决方案建议修改表本身内的值 然而 在这种情况下 这不是一个选项 因为数据库用于开发和 或修补得非常差的第三方应用程序 实际上 我认为
  • 没有列名列表的tsql标识插入

    我要将一些数据从一个数据库转储到另一个数据库 我在用 set identity insert MyTable on GO INSERT INTO MyTable SELECT FROM sourceDB dbo MyTable GO set
  • BCP 语法问题

    总之 我正在尝试编写一个可以每天从 SQL Server 2008 实例上的批处理文件运行的查询 我以前从未使用过 BCP 但在查看了一些在线示例后 我尝试创建一个真正的基本查询来测试计算机上的进程和权限 然后再将选择查询扩展到所需的数据集
  • 如何在 SQL Server 查询中的 FROM 子句中使用变量?

    我正在创建一个查询 该查询将选择表中的所有数据 查询将根据我将传递给存储过程的变量选择表 在我的例子中 如果我执行example sp table1它将选择table1 如果我使用同样的事情example table table2 应该选择
  • SQL Server 2005 - 达到表行大小限制

    有没有一种干净的方法可以在向表添加新列之前确定表的行大小 并且不超过 8060 字节的限制 例如 如果表行长度当前为 8055 字节 并且我想添加日期时间 8 字节 则这将结束 因为它将变为 8063 字节 不包括空映射 但是 如果我添加一
  • 在 SQL Server 中选择条件的值[重复]

    这个问题在这里已经有答案了 在查询选择中 我想显示字段是否满足条件的结果 想象一下我有一张名为stock 该表有一列告诉我库存中每种商品的数量 我想做的是这样的 SELECT stock name IF stock quantity lt
  • 如何将 T-SQL 中的结果连接到列中?

    我正在处理一个查询 它应该给我这样的结果 Name Surname Language Date James Hetfield en gb fr 2011 01 01 Lars Ulrich gb fr ca 2011 01 01 但我的选择
  • 如何对 Stack Exchange Data Explorer (SEDE) 结果进行分页?

    Using 数据浏览器 https data stackexchange com stackoverflow query 875322创建查询 SELECT P id creationdate tags owneruserid answer
  • 如何更新 SQL Server 中 ntext 列中的 XML 字符串?

    有一个包含 2 列的 SQL 表 ID int 和值 ntext 值行中包含各种 xml 字符串 ID Value 1
  • 如何将特定行保留为查询(T-SQL)的第一个结果?

    我正在编写一个 SQL 查询来获取 Report Builder 3 0 中报表的参数列表 我需要在结果中添加一个带有值 All 的额外行 如下所示 SELECT All UNION SELECT DISTINCT Manager FROM
  • SQL中的三元运算符? “传递给 LEFT 或 SUBSTRING 函数的长度参数无效”

    抱歉这个误导性的话题 我不知道如何更好地表达 因为我主要是一名软件开发人员 所以我想到了三元运算符并解决了以下问题 我需要找到通过可为空的外键链接两个表的最可靠的方法 modModel and tabSparePart 两者之间唯一的相似之
  • 如何为SQL Server 2005实例中的所有数据库创建DDL触发器

    我将为 SQL Server 实例中的所有数据库创建一个 DDL 触发器 我想在一次运行中完成此操作 而不是为每个数据库运行多次 下面是我需要执行的两个 T SQL 语句 Create table use
  • SQL Server 中高效的字符串后缀搜索?

    我想找到与谓词匹配的所有行MyColumn LIKE FooBar 但通过使用索引查找而不是扫描 一种方法本质上是创建 MyColumn 的反向版本并搜索反向模式 ooF 在该列上 在反向列上有一个常规索引 然而 我不喜欢手动创建这个反向列
  • 雪花:如果存在则删除列

    我没有找到任何简单的方法来 翻译 Snowflake 中的以下 T SQL 查询 ALTER TABLE table1 DROP COLUMN if exists col1 有任何想法吗 谢谢 随着介绍雪花脚本和分支构造 https doc

随机推荐

  • 将 Laravel 请求中的数组值转换为整数

    我想要array diff Laravel 中的两个数组 第一个数组如下所示 array 4 0 gt 7248 1 gt 7249 2 gt 7250 3 gt 7251 第二个 array 4 0 gt 7248 1 gt 7249 2
  • 在 R 中裁剪光栅

    我正在绘制美国东北部的地图 地图背景需要是海拔图或年平均温度图 我有来自 Worldclim org 的两个栅格 它们为我提供了这些变量 但我需要将它们裁剪到我感兴趣的状态范围 有关如何执行此操作的任何建议 这是我到目前为止所拥有的 loa
  • MySQL:索引可变长度的json数组?

    我想做一个tags类型列json e g id tags 1 tag1 tag2 tag3 2 tag1 tag3 tag5 tag7 3 tag2 tag5 我想为每个索引tag在数组中 不知道数组的长度 可变长度 那么如果我查询包含的行
  • 将大量数据从 NIST 更改为 RIFF wav 文件

    所以 我正在编写一个语音识别程序 为此 我从 TIMIT 下载了 400MB 的数据 当我打算读取 wav 文件时 我尝试了两个库 如下所示 import scipy io wavfile as wavfile import wave fs
  • 向客户展示应用程序的测试版

    我可以向客户发送可以在模拟器中运行的 iOS 应用程序的测试版吗 我可以在 Mac 上仅安装模拟器 不带 Xcode 吗 实际上 我需要一种有效的方法来向他发送应用程序的测试版 而不必在每次更新时与他见面 另外 3 有没有办法安装我在 iO
  • 当指定 -g 时,gcc 会定义什么吗?

    很快 我想知道 gcc 或 g 我需要它C 但也对 c 感到好奇 定义了任何特殊符号 如果 g已启用 可以 如果是的话 是什么符号 在搜索过程中我发现 DEBUG是手动定义的 手动我的意思是 D DEBUG 并且是 Visual C 程序员
  • 如何列出 docker 容器中包含的所有应用程序?

    我已经下载了一个 docker 容器 它使用几种不同类型的软件对输入文件执行多种不同的操作 即对齐 变体调用等 如何找出 docker 容器 图像的内容是什么 抱歉 如果这是微不足道的 我对 docker 完全陌生 有 至少 三种方式来解释
  • 错误:尝试在主机“localhost:27017”上运行命令“saslStart”时出现网络错误

    当我跑步时mongo我可以使用列出数据库show dbs命令 并执行写入和读取操作 但是当使用客户端 Robot 3T 时 我收到下一个错误 Error Network error while attempting to run comma
  • Python - 使用线程或队列迭代调用函数的 for 循环

    我对 python 相当陌生 正在制作一个脚本 允许将其他程序的点云数据引入 Autodesk Maya 我的脚本运行良好 但我想做的是让它更快 我有一个 for 循环 它遍历编号文件的列表 IE datafile001 txt dataf
  • 兑换代币代码 facebook-c#-sdk

    我正在使用 Facebook C Sdk v5 0 3 在 vb net 中创建一个非画布 Web 表单应用程序 但在将返回的 facebook 代码交换为 access token 时遇到问题 有人有我可以看的示例 C 或 vb net
  • 在 WooCommerce 管理新订单自定义字段中加载用户自定义数据

    灵感来自Woocommerce 可编辑自定义结帐字段和 get formatted shipping address https stackoverflow com questions 61522677 woocommerce editab
  • apache poi:如何创建带有条形图和折线图的图表?

    是否可以在 apache poi 中创建一个包含条形图和折线图的图表 你可以找个例子here https blogs office com en us 2012 06 21 combining chart types adding a se
  • 填充网络表单的最佳日历弹出窗口是什么?

    我希望能够在选择日期后进行 HTTP 调用来更新某些选择框 我希望能够控制更新文本框 以便我知道何时发生 真正的 更改 如果选择了相同的日期 理想情况下 我会调用一个函数来弹出日历 并能够在填充文本框之前评估日期 这样我就可以在进行服务器调
  • 将多个项目放在相对布局中居中而不将它们放入容器中?

    我有一个包含一对并排按钮的相对布局 我希望它们在布局中居中 我可以将按钮放在 LinearLayout 中并将其居中放在relativelayout 中 但我想保持 xml 尽可能干净 这是我尝试过的 这只是将 应用 按钮放在中间 将 撤消
  • 添加具有现有列名称的新列

    我正在处理一个数据框 如下所示 FID geometry Code w1 w2 0 12776 POLYGON 1 350000000000025 53 61540813717482 12776 0 1 1 13892 POLYGON 6
  • 在基本层面上,eval-parse 在 R 中做什么?

    我已经看到在循环或 apply 函数中使用 eval parse 的参考 但我仍然不清楚如何使用它 为了帮助像我这样的初学者理解它 有人可以解释为什么下面的第一部分 没有 eval parse 有效 而第二部分 有它 不起作用 这是 eva
  • Poetry能否根据对应C库的版本自动选择包版本

    我将使用 GDAL 作为具体示例 为了安装gdalPython 包 您必须先安装 GDAL C 库 您还必须安装 Python 版本gdal以匹配您安装的 C 库的版本 gdal config version 3 2 0 lt this i
  • 有没有办法让 WPF 应用程序尊重 Windows 10 中深色/浅色主题的系统选择?

    Windows 10最近添加了深色模式 有什么方法可以让我的 WPF 应用程序尊重此设置吗 最好是一个可以自动翻转它的开关 但如果没有 我想我可以在某处读取系统设置并切换到我的代码或其他东西中的备用主题 没有直接的 API 事件来检测 wp
  • # 符号的 HTML 字符实体是什么?

    符号的 HTML 字符实体是什么 我四处寻找 英镑 不断返回货币 哈希 和 数字 但我尝试的似乎没有变成正确的字符 您可以在以下位置搜索单个字符 文件格式信息 http www fileformat info info unicode ch
  • T-SQL:DROP 表级联约束等效吗?

    在 Oracle 中 我可以发出 DROP TABLE 级联约束 它不会抱怨 FK 等 T SQL 中有等效的吗 对于那些希望获得更普遍适用的答案的人 这将找到约束 删除它 然后删除列 感谢蒂姆 伦汀并投票如何查找默认约束的名称 https