Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 所有表的分层列表_Sql Server - Fatal编程技术网

Sql server 所有表的分层列表

Sql server 所有表的分层列表,sql-server,Sql Server,在SQLServerDB中,我必须找到所有的“主”(父)表,并构建一个 子表/子表的层次结构列表。最后,我想遍历这个层次结构 从下列表并删除所有子表数据,最后我可以删除 父数据也会被删除。 我尝试了一种方法,即使用系统表(如sys.objects等)I 查询数据库的元数据(如主键和外键)。但我不知道怎么做 制定树状结构。请在SQL Server Management Studio中尝试以下操作: EXEC sp_msdependencies @intrans = 1 如果将结果插入临时表中,

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

请在SQL Server Management Studio中尝试以下操作:

EXEC sp_msdependencies @intrans = 1 
如果将结果插入临时表中,则可以将其过滤为表、视图,或者使用其他可选参数来执行相同的操作

EXEC sp_msdependencies @intrans = 1 ,@objtype=8  --8 = tables
EXEC sp_msdependencies @intrans = 1 ,@objtype=3  --3 = tables is the correct one
查看此项了解更多信息