SQL Server 2008 r2 で tsqlt をセットアップするスクリプトを実行しようとすると、このエラーが発生します
「OBJECT_SCHEMA_NAME」は、認識される組み込み関数名ではありません。
SQL 2008 r2 を搭載した別のマシンでは、スクリプトは正常に実行されます。
それぞれのマシンのSQLサーバーのセットアップで、ユーザーまたは権限に違いは見られません。
これは、エラーをスローするステートメントです。
CREATE FUNCTION tSQLt.Private_GetOriginalTableInfo(@TableObjectId INT)
RETURNS TABLE
AS
RETURN SELECT CAST(value AS NVARCHAR(4000)) OrgTableName,
OBJECT_ID(QUOTENAME(OBJECT_SCHEMA_NAME(@TableObjectId))
+ '.' + QUOTENAME(CAST(value AS NVARCHAR(4000)))) OrgTableObjectId
FROM sys.extended_properties
WHERE class_desc = 'OBJECT_OR_COLUMN'
AND major_id = @TableObjectId
AND minor_id = 0
AND name = 'tSQLt.FakeTable_OrgTableName';
GO