在删除northwindcs表时,发生报错,消息 3726,级别 16,状态 1,第 2 行,无法删除对象 '产品',因为该对象正由一个 FOREIGN KEY 约束引用.此时判断是因为有其他表的外键引用了本表,导致无法删除.下面脚本可查询本表是由哪个表的哪个外键引用: SELECT FK.NAME,FK.OBJECT_ID,OBJECT_NAME(FK.PARENT_OBJECT_ID) AS REFERENCETABLENAME FROM SYS.FOREIGN_KEYS AS FK JOI…
外键: 查询:select object_name(a.parent_object_id) 'tables'  from sys.foreign_keys a  where a.referenced_object_id=object_id('B表') 格式(名称):FK_A表_B表 A表是主表,引用B表的id字段作为外键,删除B表时候,“无法截断表B,因为该表正由 FOREIGN KEY 约束引用.” 删除外键: alert table A表 drop constraint FK_A表_B表 清…
有时想删除某个表时,提示“无法删除对象 'Orders',因为该对象正由一个 FOREIGN KEY 约束引用”,原因很简单不要急躁,它被其它表的外键引用了,所以无法删除,在此只需先找到哪些表的外键引用了该表的字段.通过系统函数就能解决(SQL Server系统函数提供了非常完善的功能,能代替我们查找和解决许多问题). select    fk.name,fk.object_id,OBJECT_NAME(fk.parent_object_id) as referenceTableNamefrom…
=================================版权声明================================= 版权声明:原创文章 禁止转载  请通过右侧公告中的“联系邮箱(wlsandwho@foxmail.com)”联系我 勿用于学术性引用. 勿用于商业出版.商业印刷.商业引用以及其他商业用途. 本文不定期修正完善. 本文链接:http://www.cnblogs.com/wlsandwho/p/5126708.html 耻辱墙:http://www.cnblo…
如下解决了五个问题 1. 清空数据 2. 有外键也可以, 因为是逆向删除, 从最后一张表删除. 且使用的是delete, 因为truncate不能对有外键的表 3. 种子问题, 如果表存在种子重设为0, 如不存在就不操作 4. 加了事务, 中间报错, 有后悔机会 5. 截断日志功能, 因为使用delete, 删除后日志文件会增大, 可以不使用 if( object_id('pr_DataClear') is not null ) drop procedure pr_DataClear go cr…
某表的某个字段作为另一个表的FOREIGN KEY,在truncate另外一个表后,再truncate某表,就报如上的错. 解决方法: → 删除另外一个表的外键 IF OBJECT_ID(N'[dbo].[外键]', 'F') IS NOT NULL ALTER TABLE [dbo].[另外一个表] DROP CONSTRAINT [外键]; GO → truncate某表 truncate table 某表 → 再为另外一个表创建外键约束 ALTER TABLE [dbo].[另外一个表]…
FOREIGN KEY约束添加规则 1.外键约束并不仅仅可以与另一表的主键约束相链接,它还可以定义为引用另一个表中 UNIQUE 约束的列. 2.如果在 FOREIGN KEY 约束的列中输入非 NULL 值,则此值必须在被引用列中存在:否则,将返回违反外键约束的错误信息. 若要确保验证了组合外键约束的所有值,请对所有参与列指定 NOT NULL. 3.FOREIGN KEY 约束仅能引用位于同一服务器上的同一数据库中的表. 跨数据库的引用完整性必须通过触发器实现. 4.FOREIGN KEY…
使用SSMS数据库管理工具修改FOREIGN KEY约束 1.连接数据库,选择数据表->右键点击->选择设计(或者展开键,选择要修改的外键,右键点击,选择修改,后面修改步骤相同). 2.在表设计窗口中->选择要修改的外键列->右键点击->选择关系. 3.在外键关系弹出框中->选中要修改的外键->点击修改表和列规范. 4.在表和列弹出框中->输入要修改的外建名->选择要修改的主键基表->选择要修改的主键基表的数据列->选择要修改的外键基表-&…
一直在关注软件设计方面,数据库方面就忽略了很多,最近在设计数据库时遇到了一些小麻烦,主要是数据库中约束和性能调优方面的应用,以前在学习 Sql Server 2000,还有后来的 Sql Server 2005 数据库时进行了总结,现在也暴露出了一些问题,由于学习的不深入,有一段时间不使用,就会忘记一些东西,所以为了让自己的知识更加牢固,还是要经常拿出来,看看.    那闲话少说进入我们今天的主题, SQLServer 中有五种约束, Primary Key 约束. Foreign Key 约束…
1.Foreign key 说明: foreign key(外键) 建立起了表与表之间的约束关系,让表与表之间的数据更具有完整性和关联性.设想,有两张表A.B,A表中保存了许多电脑制造商的信息,比如联想.戴尔.惠普和华硕,B表中保存了许多多型号的电脑,比如lenovo1,lenovo2,hp1,hp2,hp3,dell1,dell2,asus1,现在如何将两张具有从属关系(每个电脑品牌下都有很多型号的电脑)的表关联起来呢? 我们可以在B表中设置外键.首先我们给这个外键关联关系起个名字xx,外键作…