sql 的儲存過程是對 sql **進行封裝,可以反覆利用。優點是清晰、安全,減少網路傳輸量。
create table `userinfo` (
`id` bigint(20) not null auto_increment,
`u_name` varchar(50) character set utf8mb4 collate utf8mb4_unicode_ci not null comment '使用者名稱',
`u_password` varchar(100) character set utf8mb4 collate utf8mb4_unicode_ci not null comment '密碼',
`skills` varchar(100) character set utf8mb4 collate utf8mb4_unicode_ci default null comment '技能',
primary key (`id`)
) engine=innodb auto_increment=0 default charset=utf8mb4 collate=utf8mb4_unicode_ci
create procedure 儲存過程名稱([引數列表])
begin
需要執行的語句
end
delimiter // # 來臨時定義新的結束符,mysql 預設是 (;),這裡用(//) 替換
create procedure `add_data`(in name varchar(50), in skills varchar(50))
begin
declare i int; # 宣告變數
set i=1; # 設定變數
while i<=20000 do
insert into `userinfo`(u_name,u_password,skills) values(name,'000000',skills);
set i=i+1;
end while;
end // # 在整個儲存過程結束後採用了(//)作為結束符號,告訴 sql 可以執行了
delimiter ; # 將結束符還原成預設的(;)
call add_data('張三','大威天龍');
delimiter //
create procedure `get_people`(in skill varchar(50),out total varchar(50))
begin
select count(*) from userinfo where skills = skill into total;
end //
delimiter ;
call get_people('大威天龍', @total);
select @total;
drop procedure 儲存過程名稱
mysql儲存過程介紹
1 什麼是mysql儲存例程?儲存例程是儲存在資料庫伺服器中的一組sql語句,通過在查詢中呼叫乙個指定的名稱來執行這些sql語句命令.2 為什麼要使用mysql儲存過程?我們都知道應用程式分為兩種,一種是基於web,一種是基於桌面,他們都和資料庫進行互動來完成資料的訪問工作。假設現在有一種應用程式包...
簡單儲存過程介紹 轉
什麼是儲存過程呢?定義 將常用的或很複雜的工作,預先用sql語句寫好並用乙個指定的名稱儲存起來,那麼以後要叫資料庫提供與已定義好的儲存過程的功能相同的服務時,只需呼叫execute,即可自動完成命令。講到這裡,可能有人要問 這麼說儲存過程就是一堆sql語句而已啊?microsoft公司為什麼還要新增...
簡單介紹儲存過程和儲存函式
一 儲存過程 一般儲存過程的結構 create or replace procedure 過程名 引數 資料型別 as is 宣告變數 begin 過程 異常處理 end 例 創造乙個簡單整數的加法器 create or replace procedure pro add a in out int,...