T-SQL 语句(八)—— 用户自定函数

来源:互联网 发布:python join函数 编辑:程序博客网 时间:2024/06/07 17:14

T-SQL 语句(八)—— 用户自定函数

一、用户自定义函数与储存过程比较
优点:

  1、用户定义函数可返回除了text,ntext,image,cursor和timestamp类型之外的所有数据类型,而存储过程只能返回整数值。
  2、用户定义函数执行方式灵活,可以通过 EXECUTE 方式执行,也可以用在表达式中并以返回值的方式来取代函数名,而 EXECUTE 来执行。

不足:

  存储过程可以通过 output 返回数据,而用户定义函数只可以接受参数,不同通过output类型的参数返回值。
  存储过程中可以对数据和对象进行修改,而用户定义函数只能对数据进行修改,不能对数据库对象进行修改。

二、创建函数
CREATE FUNCTION func_getdate()    RETURNS datetime    BEGIN        return getdate()    ENDGOPRINT func_getdate()-- 创建表值函数CREATE FUNCTION getEmployee()     RETURNS @tbl TABLE(        id INT NOT NULL,        name NVARCHAR(20)    )BEGIN     INSERT @tbl SELECT id,name FROM employeeRETURNENDGOSELECT * FROM getEmployee()GODROP FUNCTION getEmployee -- 删除自定义函数
0 0