SQL Server 2005-如何在SQL Server用户自订函数中调用GetDate()函数

可以在 SQL Server 2005 的使用者自 UDFs User Defined Functions )中呼叫使用 GetDate() ,下列 这个 范例程序即是一例:
 
-- 建立一 UDF now()
CREATE FUNCTION dbo.now()
RETURNS DATETIME
AS
BEGIN
  RETURN (GETDATE());
END;
GO
 
-- 测试 看看是否 的有成功
SELECT dbo.now();
GO
 
-- 然已 经测试 成功了,就可以移除
DROP FUNCTION dbo.now;
GO
1
SQL Sever 2005 是微 了近五年 时间 用大批人 才完成的 世巨作,因此很多 SQL Server 2005 有的功能,在 版的 SQL Server 无法使用,比方 ,上述的程序代 SQL Server 2000 行便 问题 (如 1 所示),因 GETDATE() 数会传 回不同的日期 时间 ,此 改用下列程序代
 
-- SQL Server 选项 ,使其允 加入 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
 
-- 测试 一下
SELECT dbo.now()
GO
 
-- 测试 成功,就可以 其移除
DROP FUNCTION now
GO
 
请注意:请将程序代码中 <您的SQL Server 名称> 换掉,以符合您实际环境的 SQL Server 执行个体名称。

本文出自 “章立民” 博客,转载请与作者联系!

你可能感兴趣的:(sql,数据库,函数,server,getdate)