MySQL儲存過程

2022-07-04 03:48:12 字數 1851 閱讀 1853

一、檢視儲存過程

--

顯示所有資料庫中所有儲存過程的基本資訊,如所屬資料庫、儲存過程名、建立時間等

show procedure

status;

--顯示指定資料庫中所有儲存過程的基本資訊,如 demo 資料庫

show procedure status where db=

'demo

';

二、建立儲存過程

--

定義結束符為「$$」,mysql預設結束符為「;」

--意思是告訴mysql直譯器,該段命令是否已經結束了,即標識一段命令起始和結束

delimiter $$

--建立儲存過程

--sp_char_split_inser:儲存過程名稱

--strs:儲存過程引數名稱

--in:表示該引數為輸入引數;out:表示該引數為輸出引數;inout:表示該引數為輸入輸出引數。不寫時預設為in,即輸入引數。

create

procedure sp_char_split_inser(in strs text

)begin

declare i int

default0;

declare leng int

default0;

declare word char(1

);

--判斷字串是否為空或空字串

if(strs is

notnull

&& strs <>

'') then

--獲取字串長度

set leng =

char_length(strs);

--迴圈

while i <

leng do

--獲取第乙個字元

set word=left(strs,1

);

if(word is

notnull

&& word <>

'') then

--判斷該條資料是否存在

ifnot

exists(select

1from demo.charinfo where hanzi=word limit 1) then

--插入資料

insert

into demo.charinfo(hanzi) values

(word);

endif

;

endif

;

--擷取除第乙個字元之外的所有字元

set strs=

substring(strs,2

);

set i=i+1;

endwhile

;

endif

;end;--

命令結束

$$delimiter ;

三、呼叫儲存過程

--

呼叫儲存過程

set@s='

測試文字';

call sp_char_split_inser(

@s);

call sp_char_split_inser(

'測試一下

');

四、刪除儲存過程

--

刪除儲存過程

drop

procedure

sp_char_split_inser;

drop

procedure

ifexists sp_char_split_inser;

mysql儲存過程 MySQL儲存過程

在本節中,您將逐步學習如何在mysql中編寫和開發儲存過程。首先,我們向您介紹儲存過程的概念,並討論何時使用它。然後,展示如何使用過程 的基本元素,如建立儲存過程的語句,if else,case,loop,儲存過程的引數。下面每個教程都包含了易於理解的示例和詳細的說明。如果您瀏覽並學習所有教程,您可...

mysql 儲存過程 mysql 儲存過程

建立 為建立儲存過程的結束標誌,使用delimiter 可更改標誌 格式create procedure begin sqlend create procedure myprocedure in param integer begin select from tb role where tb rol...

mysql 儲存過程 MySQL儲存過程

目錄 儲存過程 簡介是一組為了完成特定功能的sql語句集合 比傳統sql速度更快 執行效率更高 儲存過程的優點 執行一次後,會將生成的二進位制 駐留緩衝區,提高執行效率 sql語句加上控制語句的集合,靈活性高 在伺服器端儲存,客戶端呼叫時,降低網路負載 可多次重複被呼叫,可隨時修改,不影響客戶端呼叫...