创建系统表值函数

时间:2016-09-21 16:47:54

标签: tsql sql-server-2008-r2

有没有办法创建可以在任何数据库上运行的system table valued function。 与SP类比

use master;
create procedure sp_test
as
begin select 1 end;

exec sys.sp_MS_marksystemobject sp_test

此SP可以在服务器内的任何数据库上执行。我在TVF寻找相同的例子。

2 个答案:

答案 0 :(得分:0)

经过所有论坛后,无法建立系统功能。只有存储过程和表才能完成系统。

答案 1 :(得分:-1)

在引用函数时是否使用数据库名称?如果是这样,你可以创建你的功能......

USE Master
GO

CREATE FUNCTION dbo.yourITVF()
RETURNS TABLE AS RETURN
SELECT * FROM <some table>;
GO

然后从实例上的任何数据库中运行它:

SELECT * FROM master.dbo.yourITVF();