2

我想提出在尽可能多的 SQL Server 版本上返回 Microsoft SQL Server 实例中的数据库和表的最小查询集。

我不确定我是否应该半回答我自己的问题,但这是我认为 2000 年和 2005 年需要的内容。理想情况下,我会更进一步,但我无法访问旧版本:

权限

2005:具有查看任何定义权限的用户

2000:在所有要检索的数据库上具有公共角色的用户

数据库

sp_databases

或者

SELECT * FROM sysdatabases

都适用于 SQL Server 2000 和 2005

2005年

SELECT name FROM <database>.sys.tables

或者

SELECT table_name FROM <database>.information_schema.tables WHERE table_type = 'BASE TABLE'

2000

SELECT name from <database>.dbo.sysobjects WHERE xtype = 'U'
4

1 回答 1

2

我相信 INFORMATION_SCHEMA 视图可以帮助你。

http://msdn.microsoft.com/en-us/library/ms186778.aspx

于 2008-11-04T13:45:58.950 回答