儲存過程
前提: 在大型資料庫中
定義: 儲存在資料庫中, 使用者通過指定儲存過程的名字並給出引數(帶有引數的)來執行它
宣告: 儲存過程是資料庫中乙個重要的物件,類似於php,js 中的函式
建立儲存過程
create procedure 名稱(in|out|inout 名稱 型別,...)
begin
過程體;
end說明: 過程體可以使用所學的所有sql
可以運用變數,運算,流程控制語句,函式
儲存過程沒有返回值
in 傳入引數
out 傳出引數
inout 傳入傳出引數
儲存過程中的變數
資料型別
int smallint tinyint char varchar text enum() set() 等
宣告變數
declare 變數名 型別(長度)
default 預設值
變數賦值
set 變數名 = 值
變數使用
變數名儲存過程中的運算
算數運算
比較運算
邏輯運算
and or not
賦值set 變數=值
儲存過程中的條件語句
if 條件 then
elseif 條件 then
過程;elseif 條件 then
過程;elseif 條件 then
過程;else
過程;end if;
儲存過程中選擇語句
case 變數名或字段或表示式
when 0 then
語句;when 1 then
語句;else
語句;end case;
儲存過程中迴圈語句
while 迴圈條件 do
變換步長;
end while;
repeat
變換步長
until 終止條件
end repeat;
儲存過程中的函式
字串函式:
concat (string2 [,... ]) //連線字串
replace (str ,search_str ,replace_str ) //在str中用replace_str替換search_str
substring (str , position [,length ]) //從str的position開始,取length個字元
數學函式:
ceiling (number2 ) //向上取整
floor (number2 ) //向下取整
rand([seed]) //隨機數
round (number [,decimals ]) //四捨五入,decimals為小數字數]
時間日期函式:
current_date ( ) //當前日期
current_time ( ) //當前時間
now ( ) //當前時間
current_timestamp ( ) //當前時間
儲存過程的管理
檢視所有儲存過程
select name from mysql.proc where db = 'system' and type= 'procedure'
檢視某個儲存過程
show create procedure 儲存過程名稱;
刪除儲存過程
drop procedure 儲存過程名稱;
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語句加上控制語句的集合,靈活性高 在伺服器端儲存,客戶端呼叫時,降低網路負載 可多次重複被呼叫,可隨時修改,不影響客戶端呼叫...