mysql儲存過程簡單用法

2022-09-09 02:03:12 字數 2018 閱讀 6045

show procedure status 檢視所有儲存過程

<!--  簡單儲存過程  -->

先將結束符改成//

delimiter //

create procedure query(page int)

beginselect * from class where id > page;

end//

將結束符改回;

delimiter ;

<!--  呼叫儲存過程  -->

call query(20)

<!--  刪除儲存過程  -->

drop procedure query

<!--  會話變數的使用  -->

set @age=10;

select @age;

<!--  宣告乙個輸出引數的儲存過程  -->

delimiter //

create procedure pro(out str varchar(20))

begin

set str="測試";

end%

delimiter ;

call pro(@name);  <!--  呼叫儲存過程  -->

select @name;     <!--  獲得資料  -->

<!--  宣告乙個輸入 / 輸出引數的儲存過程  -->

delimiter //

create procedure xx(inout n int)

begin

select n;

<!--  此時n是區域性變數  -->

set n=500;

end//

delimiter ;

set @n=10;

call xx(@n);

<!--  列印10  -->

select @n

<!--  列印500  -->

檢視全域性變數

show global variables;  

設定全域性變數

set global max_allowed_packet=53687091200;  

帶條件判斷的儲存過程

delimiter $

create procedure testif(in num int,out str varchar(20))

begin 

if num = 1 then 

set str = '星期一';

if num = 2 then 

set str = '星期二';

else

set str = '星期一';

end if;

end $

定義乙個迴圈,求1-100的和

delimiter $

create procedure testwhile(in num int,out result int)

begin

-- 定義乙個區域性變數

declare i int default 1;

declare vsum int default 0;

while iset vsum = vsum + i;

set i = i + 1;

end while;

set result = vsum;

end $

call testwhile(100,@result);

select @result;

into 的使用,將查詢結果作為返回值

delimiter $

create procedure findbyid(in eid int,out vname varchar(20))

begin

select empname into vname from employee where id = eid;

end $

call findbyid(1,@name);

select @name;

<!--  修改資料  -->

<!--  插入資料  -->

mysql的簡單用法 mysql簡單用法

刪除使用者 drop user jack drop比delete刪除的優勢在於drop可以刪除使用者的許可權,更加徹底 更改使用者名稱 rename user jack to jacknew 使用者的都存在與user表中,更改名稱,許可權不變 更改使用者密碼 update mysql.user se...

MySQL臨時表的簡單用法

當工作在非常大的表上時,你可能偶爾需要執行很多查詢獲得乙個大量資料的小的子集,不是對整個表執行這些查詢,而是讓mysql每次找出所需的少數記錄,將記錄選擇到乙個臨時表可能更快些,然後在這些表執行查詢。建立臨時表很容易,給正常的create table語句加上temporary關鍵字 create t...

MySQL臨時表的簡單用法

當工作在非常大的表上時,你可能偶爾需要執行很多查詢獲得乙個大量資料的小的子集,不是對整個表執行這些查詢,而是讓mysql每次找出所需的少數記錄,將記錄選擇到乙個臨時表可能更快些,然後在這些表執行查詢。建立臨時表很容易,給正常的create table語句加上temporary關鍵字 create t...