数据库学习笔记——由于外键无法删除表的解决方法
今天进行书本中数据库实验的时候,遇到了如下的问题
造成这个问题出现的原因在于:其他表有建立与该表的外键,由于有这样的关系,无法直接删除表;
经过查阅资料,得到初步的解决方法:
1.检查出与需要删除的表建立了外键关系的表
2.删除上述找到的对应的关系
3.删除需要删除的表
具体实现方法:
上述解决方案的关键点在于:对数据库系统自带函数的应用
select
fk.name,fk.object_id,OBJECT_NAME(fk.parent_object_id) as referenceTableName
from sys.foreign_keys as fk
join sys.objects as o on fk.referenced_object_id=o.object_id
where o.name='Users'
还未解决的问题:对于上述语句的逐一解析。
fk.name------为约束的名称
referenceTableName --------对应约束所在的表名