龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Sql Server开发 >

sql server 标量值函数实例与不能调用原因分析

时间:2013-01-03 18:08来源:未知 作者:admin 点击:
分享到:
sql server 标量值函数实例与不能调用原因分析,MS SQL 标量值函数,应该在函数前面加上 "dbo.",否则会报 “不是可以识别的 内置函数名称”错误 sql server 标量值函数实例与不能调用原因分
sql server 标量值函数实例与不能调用原因分析,MS SQL 标量值函数,应该在函数前面加上 "dbo.",否则会报 “不是可以识别的 内置函数名称”错误

sql server 标量值函数实例与不能调用原因分析
--标量值函数

set ansi_nulls on
go
set quoted_identifier on
go
-- =============================================
-- author: <author,,name>
-- create date: <create date, ,>
-- description: <description, ,>
-- =============================================
create function <scalar_function_name, sysname, functionname>
(
-- add the parameters for the function here
<@param1, sysname, @p1> <data_type_for_param1, , int>
)
returns <function_data_type, ,int>
as
begin
-- declare the return variable here
declare <@resultvar, sysname, @result> <function_data_type, ,int>

-- add the t-sql statements to compute the return value here
select <@resultvar, sysname, @result> = <@param1, sysname, @p1>

-- return the result of the function
return <@resultvar, sysname, @result>

end


用 ms sql 标量值函数,应该在函数前面加上 "dbo.",否则会报 “不是可以识别的 内置函数名称”错误。例如

  

  declare @whichdb tinyint;
    select @whichdb = user_getwhichdb(1);--看看是哪个数据库教程的

=================================================

--标量值函数

alter function [dbo].[user_getwhichdb]
(
    @userid int = 0
)
returns tinyint
with execute as caller
as
begin
    declare @whichdb tinyint;
    set @whichdb = 1;
    if @userid >= 115098
        set @whichdb = 2;
   
    return (@whichdb);
end


收藏文章
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
评论内容为空!
还没有评论,快来抢沙发吧!

热评话题

按钮 内容不能为空!
立刻说两句吧! 查看0条评论
精彩图集

赞助商链接