在不同的数据库中执行像object_definition(' asdf')这样的内置函数

时间:2015-01-30 19:02:19

标签: sql-server

我想使用内置函数,但想要在不同的数据库中定位对象。

实施例

------------------------------------
USE TestDB_1
GO
SELECT OBJECT_DEFINITION('SOME OBJECT')
UNION
SELECT TestDB_2.SYS.OBJECT_DEFINITION('SOME OBJECT')
------------------------------------

我知道我可以引用sys.sql_modules来获取对象定义,我一般都要求任何内置的sql函数,比如db_name()等。

1 个答案:

答案 0 :(得分:2)

您无法在SELECT中引用其他数据库中的系统函数,但您可以像这样运行

use TestDB_1
exec TestDB_2..sp_executesql N'SELECT OBJECT_DEFINITION(OBJECT_ID(''SOME OBJECT''))'
相关问题