日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

mysql数据存储和函数_MySQL数据库——存储和函数

發(fā)布時(shí)間:2025/3/11 数据库 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql数据存储和函数_MySQL数据库——存储和函数 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、存儲(chǔ)過程

1 基本語(yǔ)法

CREATE PROCEDURE sp_name ([proc_parameter[,...]])

[characteristic ...] routine_body

格式[IN|OUT|INOUT]param_name type

2. IN、OUT、INOUT參數(shù)

(1)帶84存儲(chǔ)過程實(shí)例

1 #帶多重IF的存儲(chǔ)過程2 CREATE PROCEDURE SP_SGRADE_LEVEL(IN p_level char(

Repeat語(yǔ)句語(yǔ)法格式

[begin_label:]

repeat

Statement_list

Until search_condition

End repeat

[end_label]

Repeat語(yǔ)句首先執(zhí)行statement_list中的語(yǔ)句,然后判斷條件search_condition是否為真,倘若為真,則結(jié)束循環(huán),若不為真,繼續(xù)循環(huán)。

Repeat先執(zhí)行后判斷,while先判斷后執(zhí)行。

使用范例:

1 #帶repeat的存儲(chǔ)過程2 CREATE PROCEDURE sp_cal2(IN p_num INT,OUT p_result INT)3 BEGIN 4 SET p_result=1;5 REPEAT6 SET p_result = p_num *p_result;7 SET p_num = p_num-1;8 UNTIL p_num<=1 9 ENDREPEAT;10 END

5.調(diào)用存儲(chǔ)過程

Call sp_name([parameter[,…]]);

Sp_name被調(diào)用存儲(chǔ)過程的名稱

Parameter:指定調(diào)用存儲(chǔ)過程所要使用的參數(shù)。

6.修改存儲(chǔ)過程

代碼如下:

Alter procedure proc_name[characteristic…]

只能修改存儲(chǔ)過程的特征,如果要修改存儲(chǔ)過程的內(nèi)容,可以先刪除該存儲(chǔ)過程,然后再重新創(chuàng)建

7.刪除存儲(chǔ)過程

代碼如下:

Drop procedure [if exists] sp_name;

二、函數(shù)

1. 定義

MySQL中,創(chuàng)建存儲(chǔ)函數(shù)的基本形式如下:

CREATE FUNCTION sp_name([func_parameter[,...]])

RETURNS type

[characteristic ...] routine_body

Return

調(diào)用存儲(chǔ)函數(shù)

Select sp_name([func_parameter…])

Select fn_search(2);

2.存儲(chǔ)過程和函數(shù)區(qū)別

1)一般來(lái)說(shuō),存儲(chǔ)過程實(shí)現(xiàn)的功能要復(fù)雜一點(diǎn),而函數(shù)的實(shí)現(xiàn)的功能針對(duì)性比較強(qiáng)。存儲(chǔ)過程,功能強(qiáng)大,可以執(zhí)行包括修改表等一系列數(shù)據(jù)庫(kù)操作;用戶定義函數(shù)不能用于執(zhí)行一組修改全局?jǐn)?shù)據(jù)庫(kù)狀態(tài)的操作。

2)對(duì)于存儲(chǔ)過程來(lái)說(shuō)可以返回參數(shù),如記錄集,而函數(shù)只能返回值或者表對(duì)象。函數(shù)只能返回一個(gè)變量;而存儲(chǔ)過程可以返回多個(gè)。存儲(chǔ)過程的參數(shù)可以有IN,OUT,INOUT三種類型,而函數(shù)只能有IN類~~存儲(chǔ)過程聲明時(shí)不需要返回類型,而函數(shù)聲明時(shí)需要描述返回類型,且函數(shù)體中必須包含一個(gè)有效的RETURN語(yǔ)句。

3)存儲(chǔ)過程,可以使用非確定函數(shù),不允許在用戶定義函數(shù)主體中內(nèi)置非確定函數(shù)。

4)存儲(chǔ)過程一般是作為一個(gè)獨(dú)立的部分來(lái)執(zhí)行( EXECUTE 語(yǔ)句執(zhí)行),而函數(shù)可以作%

總結(jié)

以上是生活随笔為你收集整理的mysql数据存储和函数_MySQL数据库——存储和函数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。