sql 三种用户定义函数定义及调用示例

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

--标量值函数
CREATE FUNCTION dbo.f_1()
RETURNS bit
AS
BEGIN
RETURN(1)
END
GO

--内嵌表值函数
CREATE FUNCTION dbo.f_2()
RETURNS TABLE
AS
RETURN(SELECT re=1)
GO

--多语句表值函数
CREATE FUNCTION dbo.f_3()
RETURNS @re TABLE(re bit)
AS
BEGIN
INSERT @re VALUES(1)
RETURN
END
GO

--不指定所有者时,调用标量值函数会出错
SELECT f_1()
/*--结果
服务器: 消息 195,级别 15,状态 10,行 2
'f_1' 不是可以识别的 函数名。
--*/
GO

--指定所有者调用标量值函数成功,而所有者为dbo时,表值函数可以不指定所有者调用
SELECT dbo.f_1()
SELECT * FROM f_2()
SELECT * FROM f_3()
GO

DROP FUNCTION f_1,f_2,f_3

相关文档
最新文档