收录日期:2019/05/21 01:11:12 时间:2016/05/31 07:15:24 标签:ASP.NET
create FUNCTION [dbo].[setSP] ()
RETURNS datetime  AS  
begin
Declare @date datetime
      .....

set @date= getdate()
      .....
return @date
end

出现如下错误
在函数内不正确地使用了 'getdate'。
怎么解决?
DECLARE NVARCHAR(20) @Date
   
         SET @Date = CONVERT(NVARCHAR(20),GetDate(),120)
I did briefly discuss of using non-determinitic functions in UDF is not possible. But there have been tons of questions in newsgroups asking why they cannot use getdate() in their UDF. Understand that getdate() is a built-in UDF which is non-determinitic in nature. But there are workarounds for the same. See the example below :

CREATE VIEW CurrentDate AS SELECT Date = GETDATE()
GO
CREATE FUNCTION myFunction () RETURNS DATETIME AS
BEGIN
   DECLARE @myDateTime DATETIME
   SELECT @myDateTime = Date FROM CurrentDate
   RETURN (@myDateTime)
END
GO
SELECT dbo.myFunction()
GO
应为function内部不允许使用
函数可以是确定的或不确定的。如果任何时候用一组特定的输入值调用函数时返回的结果总是相同的,则这些函数为确定的。如果每次调用函数时即使用的是相同的一组特定输入值,返回的结果总是不同的,则这些函数为不确定的。

不确定的函数会产生副作用。副作用是更改数据库的某些全局状态,比如更新数据库表或某些外部资源,如文件或网络等(例如,修改文件或发送电子邮件消息)。

不允许在用户定义函数主体中内置不确定函数;这些不确定函数如下:

@@CONNECTIONS @@TOTAL_ERRORS 
@@CPU_BUSY @@TOTAL_READ 
@@IDLE @@TOTAL_WRITE 
@@IO_BUSY GETDATE 
@@MAX_CONNECTIONS GETUTCDATE 
@@PACK_RECEIVED NEWID 
@@PACK_SENT RAND 
@@PACKET_ERRORS TEXTPTR 
@@TIMETICKS   

ACM题“青蛙的约会” 如何由字符串数据指定函数参数的数据类型? 这个排序的查询有什么办法做? 来领分——说说你在网络冲浪时,感觉做什么很不妨便,希望网站改进 紧急求助:怎样实现主线程和从线程之间的同步 powerpoint的View坐标与当前屏幕坐标的转换问题 使用Ext.tree.TreeLoader,服务器返回json内容格式是什么? 多表合并问题求解,在线急等!!!! Microsoft mcsd认证问题 请教:PWM 到底是什么?怎么使用?谢谢! DBGridEh如何动态的添加列 用excuse如何得到所影响的条目 请教对多列包含特定字符条件公式的编写 急~~100分求一存储过程 66分请求解决sql时间段的问题 服务器死机问题 窗口句柄出错,请教大家,谢谢各位来帮下我 崩溃,超级奇怪的问题! vs2005做个最简单的报表 SET SHOWPLAN_ALL ON 意思 500强IT软件招聘10年以上engineer sql2005总是有个别数据库连不上 求一条高效的sql语句 【cyc123007512 】2分贴 我该怎么学习C#? mfc中用clone引发应用程序错误 类型不匹配怎么转换? 月底离职,爽啊,分享离职申请 谁有StyleCop4.3中文使用说明?共享下. “最近打开文档”的功能