zoukankan      html  css  js  c++  java
  • SQL Server 自定义函数

    一、有返回值的函数

    View Code
    create function GetNo()
    returns varchar(20) --定义返回类型
    as
    begin
    declare @maxNo int --声明一个整形的变量
    declare @temp varchar(20) --声明一个与表中字段类型相同的变量
    declare @result varchar(20) --声明一个返回的变量
    declare @length int --声明一个变量,用于下面的截取字符串

    set @temp = (select max(hku_no) from person where hku_no like 'E%') --取得表中的值并赋值给变量
    set @length=datalength(@temp)-1

    if @temp is not null --如果查出的非空
    begin
    set @temp=subString(@temp,2,@length) --截取字符串
    set @maxNo=convert(int,@temp) --类型转换
    set @maxNo=@maxNo+1
    set @result='E'+convert(varchar(20),@maxNo)
    end
    else
    begin
    set @result='E0001'
    end


    return @result --返回结果

    end



    执行函数(删除、修改都和存储过程一样,drop、alter):

    select dbo.GetNo()


    二、看到一个资料说可以创建没有返回值的函数,但我尝试失败。。。

    下面创建一个有返回值有输入参数的函数

    create function GetName( @name varchar(8) )
    returns varchar(20)
    as
    begin
    return @name+'你好'
    end

    执行函数

    select dbo.GetName('ww')


    三、判断数据库中是否存在某一函数

    if exists (select * from sysobjects where id=object_id(N'[dbo].[GetExtUserHKUNo]') and xtype in (N'FN',N'IF',N'TF'))
    print 'yse'
    else
    print 'no'





  • 相关阅读:
    WEB环境安装步骤v1.2
    将m3u8格式转成mp4格式
    MySQL简介及安装v0.1
    使用脚本pull阿里云的k8s镜像并更改标签
    常用脚本
    常用命令
    记录一下环境变量IFS特定场景使用技巧
    hp-unix创建和更改LV
    HP-UNIX常用命令
    Linux集群搭建
  • 原文地址:https://www.cnblogs.com/oneivan/p/2320846.html
Copyright © 2011-2022 走看看