溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MYSQL——自定義函數(shù)

發(fā)布時間:2020-07-20 18:46:29 來源:網(wǎng)絡 閱讀:367 作者:拉考的考拉 欄目:MySQL數(shù)據(jù)庫

  自定義函數(shù)

用戶自定義函數(shù)是一種對MYSQL擴展的途徑,其用法與內(nèi)置函數(shù)相同

1   函數(shù)可以返回任意類型的值,同樣可以接收這些類型的參數(shù)

2   函數(shù)體由合法的SQL語句構(gòu)成

3   函數(shù)體可以是簡單的SELECT或INSERT語句

4   函數(shù)體如果為復合結(jié)構(gòu)則使用BEGIN...END語句

5   復合結(jié)構(gòu)可以包含聲明,循環(huán),復制結(jié)構(gòu)

6   創(chuàng)建不帶參數(shù)的自定義函數(shù)

   第一步   CREATE  FUNCTION  函數(shù)名 ()  FETURNS  字符串長度如VARCHAR(30)

   第二步   RETURN  類型(如DATE)_FORMAT  (NOW(),函數(shù)內(nèi)容如’%Y%m%d %H點:%i分:%s’);

7   創(chuàng)建帶有參數(shù)的自定義函數(shù)

   第一步   CREATE  FUNCTION   函數(shù)名如f1(參數(shù)類型和參數(shù)個數(shù)如num1  字符長度如SMALLINT  字符類型如UNSIGNED,  參數(shù)類型和參數(shù)個數(shù)如num2  字符長度如SMALLINT   字符類型如UNSIGNED)

   第二步   RETUPNS 返回值類型如 FLOAT(10,2)  UNSIGNED

   第三步   RETUPNS 返回值如(num1+num2)/2;

8   調(diào)用函數(shù)

   SELECT 函數(shù)名 (參數(shù)名如10,15);

   修改當前MYSQL的默認定界符

   DELIMITER  新的定界符

9   創(chuàng)建具有復合結(jié)構(gòu)函數(shù)體的自定義函數(shù)(創(chuàng)建前要先修改MYSQL的默認定界符為//,創(chuàng)建好后要修改回;)

   第一步   CREATE  FUNCTION adduser(用戶名如username  字符長度如VARCHAR(20)

  第二步   RETURNS 數(shù)據(jù)類型如INT 字符類型如UNSIGNED

  第三步   BEGIN

   第四步   INSERT 表名(用戶名)VALUES(用戶名);

   第五步   RETURNLAST_INSERT_ID();

   第六步   END

   第七步    //

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI