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

Hao*_*est 9 sql-server system

我可以用:

select * from sys.tables
Run Code Online (Sandbox Code Playgroud)

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

说我用A:

use A
Run Code Online (Sandbox Code Playgroud)

声明,我可以在数据库B中显示表吗?

Dan*_*fer 16

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

select * from your_database_name.sys.tables
Run Code Online (Sandbox Code Playgroud)

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

要使用您的示例:

use a;
go

select * from sys.tables; -- selects table info from a
select * from b.sys.tables; -- selects table info from b
Run Code Online (Sandbox Code Playgroud)