成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

SQL Server 2005-如何在SQL Server用戶自訂函數(shù)中調(diào)用GetDate()函數(shù)

瀏覽:140日期:2023-10-31 11:11:42

您可以在SQL Server 2005的使用者自訂函數(shù)(UDFs:User Defined Functions)中呼叫使用GetDate() 函數(shù),下列這個(gè)范例程序即是一例:

-- 建立一個(gè) UDF now()

CREATE FUNCTION dbo.now()

RETURNS DATETIME

AS

BEGIN

RETURN (GETDATE());

END;

GO

-- 測(cè)試看看是否真的有成功

SELECT dbo.now();

GO

-- 既然已經(jīng)測(cè)試成功了,就可以移除

DROP FUNCTION dbo.now;

GO

圖表1

SQL Sever 2005是微軟花費(fèi)了近五年時(shí)間,動(dòng)用大批人員才完成的曠世巨作,因此很多SQL Server 2005獨(dú)有的功能,在舊版的SQL Server無法使用,比方說,上述的程序代碼在SQL Server 2000上執(zhí)行便會(huì)有問題(如圖表1所示),因?yàn)镚ETDATE() 函數(shù)會(huì)傳回不同的日期時(shí)間,此時(shí),請(qǐng)改用下列程序代碼:

-- 設(shè)定 SQL Server 選項(xiàng),使其允許加入linked server

EXEC sp_serveroption '<您的SQL Server 名稱>', 'DATA ACCESS', TRUE

GO

-- 建立 UDF

CREATE FUNCTION dbo.now()

RETURNS DATETIME

AS

BEGIN

DECLARE @dt DATETIME

SELECT @dt = dt

FROM OPENQUERY

(

<您的SQL Server 名稱>, 'SELECT dt = GETDATE()'

)

RETURN @dt

END

GO

-- 測(cè)試一下吧

SELECT dbo.now()

GO

-- 測(cè)試成功,就可以將其移除

DROP FUNCTION now

GO

請(qǐng)注意:請(qǐng)將程序代碼中 <您的SQL Server 名稱> 換掉,以符合您實(shí)際環(huán)境的 SQL Server 執(zhí)行個(gè)體名稱。

標(biāo)簽: Sql Server 數(shù)據(jù)庫