SQL Server技术问题之于定义函数优缺点

优点:

  可以于SQL语句被调用,直接用返回值,从而可以形成复杂的SQL应用。

缺点:

  能当函数中采取的报告句有严格限制:

  1. 不支持create、ALTER、drop等DDL(Data Definition Language)命令;
  2. insert、delete、update只能用在临时表上;
  3. 勿支持动态SQL;
  4. 免支持“不确定”的函数,比如常用的getdate。不确定函数是乘输入参数相同,返回结果也许不同的函数。

变通办法:
  要化解用户函数的种种限制,可以巧妙利用用户函数调用存储过程。比如,需要在函数中之所以getdate,就描写个存储过程返回getdate的结果。然后由函数里去调用这个蕴藏过程。需要以函数中运用update等,也可是类推。

相关文章