如何在另一个数据库中显示表列表?

时间:2008-12-23 18:20:10

标签: sql-server system

我可以使用:

select * from sys.tables

在mssql中显示当前数据库中所有表的列表。反正我是否可以使用类似的语法来显示另一个数据库中的表列表?

说我正在使用A:

use A

语句,我可以在数据库B中显示表吗?

2 个答案:

答案 0 :(得分:16)

这适用于我(MS SQL 2005及更新版):

select * from your_database_name.sys.tables

请记住,您(或您正在使用的任何身份验证上下文)仍需要该数据库的读取权限。

使用您的示例:

use a;
go

select * from sys.tables; -- selects table info from a
select * from b.sys.tables; -- selects table info from b

答案 1 :(得分:0)

另一种可能性是使用:

select * from your_database_name.information_schema.tables