1.進入到資料庫中檢視 是否有相關的儲存過程資料
show procedure status where db='test';
2.建立簡單的儲存過程
create procedure hi() select 'hello';
3.呼叫儲存過程
call hi();
事例:
三、mysql 儲存過程特點
建立 mysql 儲存過程的簡單語法為:
create procedure 儲存過程名字()
([in|out|inout] 引數 datatype
)begin
mysql 語句;
end;
mysql 儲存過程引數如果不顯式指定「in」、「out」、「inout」,則預設為「in」。習慣上,對於是「in」 的引數,我們都不會顯式指定。
1. mysql 儲存過程名字後面的「()」是必須的,即使沒有乙個引數,也需要「()」
2. mysql 儲存過程引數,不能在引數名稱前加「@」,如:「@a int」。下面的建立儲存過程語法在 mysql 中是錯誤的(在 sql server 中是正確的)。 mysql 儲存過程中的變數,不需要在變數名字前加「@」,雖然 mysql 客戶端使用者變數要加個「@」。
create procedure pr_add
(@a int, -- 錯誤
b int -- 正確
)3. mysql 儲存過程的引數不能指定預設值。
4. mysql 儲存過程不需要在 procedure body 前面加 「as」。而 sql server 儲存過程必須加 「as」 關鍵字。
create procedure pr_add
(a int,
b int
)as -- 錯誤,mysql 不需要 「as」
begin
mysql statement ...;
end;
5. 如果 mysql 儲存過程中包含多條 mysql 語句,則需要 begin end 關鍵字。
create procedure pr_add
(a int,
b int
)begin
mysql statement 1 ...;
mysql statement 2 ...;
end;
6. mysql 儲存過程中的每條語句的末尾,都要加上分號 「;」
...declare c int;
if a is null then
set a = 0;
end if;
...end;
7. mysql 儲存過程中的注釋。
declare c int; -- 這是單行 mysql 注釋 (注意 -- 後至少要有乙個空格)
if a is null then # 這也是個單行 mysql 注釋
set a = 0;
end if;
...end;
8. 不能在 mysql 儲存過程中使用 「return」 關鍵字。
set c = a + b;
select c as sum;
end;
9. 呼叫 mysql 儲存過程時候,需要在過程名字後面加「()」,即使沒有乙個引數,也需要「()」
call pr_no_param();
10. 因為 mysql 儲存過程引數沒有預設值,所以在呼叫 mysql 儲存過程時候,不能省略引數。可以用 null 來替代。
call pr_add(10, null);
事例:1) 批量的插入資料
delimiter $$注意點: 嚴格按照要求的格式來書寫sql語句,否則無法執行drop procedure
ifexists product;
create procedure product ()
begin
declare i int ;
set i = 1
;while i
< 100
do insert into `hotel_room_type` (
`channel`,
`shop_id`,
`hid`,
`name`
)values
('1001',
'155',
'61',
i) ;
set i = i + 1
;end
while ;
end $$
delimiter ;
call product();
Mysql 之儲存過程
b 簡介 b mysql 儲存過程是從 mysql 5.0 開始逐漸增加新的功能。儲存過程可以提高資料庫的處理速度,同時也可以提高資料庫程式設計的靈活性。b 優點 b 1 儲存過程增強了sql語言的功能和靈活性。儲存過程可以用流控制語句編寫,有很強的靈活性,可以完成複雜的判斷和較複雜的運算。2 儲存...
mysql之儲存過程
mysql之儲存過程 儲存過程 注意 儲存過程名稱後面必須加括號,哪怕該儲存過程沒有引數傳遞 1.基本語法 create procedure sp name begin end修改命令結束符 delimiter 例 建立procedure create procedure myproce begin...
MySQL 儲存程式之儲存過程
1.儲存引擎簡介是mysql的核心,一組軟體包括快取軟體,語法語義分析,解析的軟體等,不同的儲存引擎提供不同的儲存機制,索引技巧,鎖定水平等功能。可以根據不同的功能來設定不同的儲存引擎。innodb 事務性資料庫的首選,執行安全性資料庫,行鎖定和外來鍵。顯示支援的儲存引擎 show engines ...