有沒有辦法創建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尋找同樣的例子。
有沒有辦法創建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尋找同樣的例子。
在引用函數時使用數據庫名稱選項?如果是這樣,你可以只創建功能......
USE Master
GO
CREATE FUNCTION dbo.yourITVF()
RETURNS TABLE AS RETURN
SELECT * FROM <some table>;
GO
然後像這樣從任何數據庫實例上運行它:
SELECT * FROM master.dbo.yourITVF();
但我想使它成爲系統TVF,不使用4部分標識符,因爲TVF內部是我想要在每個特定DB上使用的表,就像同樣的類比SP上面描述的 – Sher
無論如何,我還沒有意識到您可以對您的ITVF示例中的存儲過程執行相同的操作。我只是提供替代/解決方案。 –
通過所有論壇會後,有沒有辦法讓系統功能。只有存儲過程和表可以完成系統。
我沒有看到任何問題,爲什麼你不能嘗試一次在測試實例 – TheGameiswar
@TheGameiswar,我沒有工作。 TVF是否有任何命名約定? – Sher
@TheGameiswar,你可以發表與上面相同的簡單例子來說清楚嗎? – Sher