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'





  • 相关阅读:
    sublime开启vim模式
    git命令行界面
    搬进Github
    【POJ 2886】Who Gets the Most Candies?
    【UVA 1451】Average
    【CodeForces 625A】Guest From the Past
    【ZOJ 3480】Duck Typing
    【POJ 3320】Jessica's Reading Problemc(尺取法)
    【HDU 1445】Ride to School
    【HDU 5578】Friendship of Frog
  • 原文地址:https://www.cnblogs.com/oneivan/p/2320846.html
Copyright © 2011-2022 走看看