我不知道为什么,但不允许CLR用户定义函数更新表。
是否可以通过调用CLR UDF中为其更新表的存储过程来解决此限制?
答案 0 :(得分:1)
它不是CLR UDF,它是任何 RDBMS UDF函数,顾名思义,不能改变数据库的状态,即搞:
更新:
糟糕,SQL Server 2008放宽了对使用非确定性函数的限制。
如果UDF使用非确定性,则将其视为非确定性的。
可以通过以下方式检查:
SELECT OBJECTPROPERTY(OBJECT_ID('dbo.FunctionName'),'IsDeterministic')