真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

mysql中創(chuàng)建用戶自定義函數(shù)

總有一些復(fù)雜的邏輯我們還需要多處使用,此時(shí)就顯現(xiàn)出函數(shù)的重要性。

創(chuàng)新互聯(lián)公司是一家專注于網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作與策劃設(shè)計(jì),萬(wàn)年網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:萬(wàn)年等地區(qū)。萬(wàn)年做網(wǎng)站價(jià)格咨詢:18980820575

MySQL函數(shù)的要素

  • 函數(shù)名
  • 參數(shù)列表
  • 函數(shù)體
  • 返回值

    定義語(yǔ)法

    create function fun_name(參數(shù)列表)
    returns 返回值類型
    函數(shù)體

    示例

    不帶參數(shù)

    delimiter $$
    create function sayhello() 
    returns varchar(20)
    begin
    return 'hello';
    end$$ 
    delimiter ;

    調(diào)用示例:
    select sayhello();

sayhello()
hello

帶參數(shù)(參數(shù)需要標(biāo)明數(shù)據(jù)類型)

    delimiter $$
    create function sayHelloToSomeOne(name varchar(20))
    returns varchar(25)
    begin
    set @str = concat('hello ',name);
    return @str;
    end
    $$
    delimiter ;

調(diào)用示例:
select sayHelloToSomeOne('Dany');

sayHelloToSomeOne('Dany')
hello Dany

函數(shù)調(diào)用過(guò)后我們驗(yàn)證一下@str變量是否依然可以訪問(wèn)。
select @str;

@str
hello Dany

@str依然可用,說(shuō)明@str的作用域是全局的。

帶多個(gè)參數(shù)

多個(gè)參數(shù)用逗號(hào) , 分隔。

函數(shù)中的局部變量

  1. 參數(shù)(勉強(qiáng)認(rèn)為是局部變量),因?yàn)閰?shù)傳遞進(jìn)來(lái)只能在函數(shù)內(nèi)部使用。
  2. declare 定義局部變量
    之前研究過(guò)以@開頭的變量是全局變量,因?yàn)榧词故窃诤瘮?shù)內(nèi)部定義的變量例如:@aa ,在調(diào)用過(guò)函數(shù)后,@aa的值在外部我們依然可以得到,這就很明顯的告訴我們,@aa是全局變量。
    全局變量容易引發(fā)變量污染,所以我們需要局部變量,來(lái)保證程序獨(dú)立。declare就是為了解決這一問(wèn)題。

語(yǔ)法:
DECLARE var_name [, var_name] ... type [DEFAULT value];
例如:

    delimiter $$
    create function sayHelloToSomeOneVarLocal(name varchar(20))
    returns varchar(30)
    begin
    declare str varchar(30);
    set str = concat('hello ',name);
    return str;
    end
    $$
    delimiter ;

select sayHelloToSomeOneVarLocal('xiaogang');

sayHelloToSomeOneVarLocal('xiaogang')
hello xiaogang

函數(shù)調(diào)用之后我們?cè)僭噲D去訪問(wèn)變量str,會(huì)報(bào)錯(cuò)。


網(wǎng)站名稱:mysql中創(chuàng)建用戶自定義函數(shù)
分享網(wǎng)址:http://weahome.cn/article/jhpppe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部