开发者

using delete or update command in a function

can we use delete or update command 开发者_如何学编程inside a function in sql server 2005 database or any other database?


If you try and use an UPDATE inside a function you'll get:

Server: Msg 443, Level nn, State 1, Procedure function_Name, Line nn
Invalid use of 'UPDATE' within a function.

To avoid this error from happening, make sure that you don’t use an UPDATE statement inside a user-defined function unless it’s updating a local table variable. If you really need to use the UPDATE statement on a table, you have to use a stored procedure instead of a user-defined function for this purpose.

Create Function


No you cannot use any DML statements (INSERT, UPDATE, and DELETE) on base tables. Another problem with a UDF is that SQL functions returning non-deterministic values are not allowed to be called from inside an UDF. Although UDFs have their own advantages they can be used in a Select, Where, or Case statement. Can be used in joins.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜