所有表的分层列表

时间:2011-04-21 08:42:16

标签: sql-server

在SQL Server数据库中,我必须找到所有“主”(父)表并构建一个 Paerent / Child表的分层列表。最后,我想遍历那种等级 列表从下来删除所有子表数据,我可以删除 父数据也 我曾尝试过一种方式,即使用系统表(如sys.objects等)I 查询数据库的元数据(如主键和外键)。但我不知道怎么做 制定树状结构。

1 个答案:

答案 0 :(得分:1)

SQL Server Management Studio中尝试此操作:

EXEC sp_msdependencies @intrans = 1 

如果将结果插入到临时表中,则可以将其过滤为表格,只是视图,或者使用proc的其他替代参数来执行相同的操作

EXEC sp_msdependencies @intrans = 1 ,@objtype=8  --8 = tables
EXEC sp_msdependencies @intrans = 1 ,@objtype=3  --3 = tables is the correct one

选中此项以获取更多Heirarchical