是否可以生成指定数据库中没有主键的所有表的列表?
这是 SQL Server 2005。
答案1
这实际上更属于 StackOverflow 而不是 ServerFault,不是吗?
无论如何,我找到了几年前发布的这个脚本:列出所有没有主键的表。它适用于 SQL 2000+。
答案2
哎呀!信息模式视图太丑陋了。
如果你的数据库是 2005,那么你应该使用目录视图,因为MS 推荐
这是我的解决方案:
SELECT
* from sys.tables
WHERE object_id not in
(SELECT object_id from sys.indexes WHERE is_primary_key=1)