PHP呼叫MYSQL儲存過程例項
例項一:無參的儲存過程
$conn = mysql_connect(`localhost`,`root`,`root`) or die (“資料連線錯誤!!!”);
mysql_select_db(`test`,$conn);
$sql = “
create procedure myproce()
begin
INSERT INTO user (id, username, sex) VALUES (NULL, `s`, `0`);
end;
“;
mysql_query($sql);//建立一個myproce的儲存過程
$sql = “call test.myproce();”;
mysql_query($sql);//呼叫myproce的儲存過程,則資料庫中將增加一條新記錄。
例項二:傳入引數的儲存過程
$sql = “
create procedure myproce2(in score int)
begin
if score >= 60 then
select `pass`;
else
select `no`;
end if;
end;
“;
mysql_query($sql);//建立一個myproce2的儲存過程
$sql = “call test.myproce2(70);”;
mysql_query($sql);//呼叫myproce2的儲存過程,看不到效果,可以在cmd下看到結果。
例項三:傳出引數的儲存過程
$sql = “
create procedure myproce3(out score int)
begin
set score=100;
end;
“;
mysql_query($sql);//建立一個myproce3的儲存過程
$sql = “call test.myproce3(@score);”;
mysql_query($sql);//呼叫myproce3的儲存過程
$result = mysql_query(`select @score;`);
$array = mysql_fetch_array($result);
echo `<pre>`;print_r($array);
例項四:傳出引數的inout儲存過程
$sql = “
create procedure myproce4(inout sexflag int)
begin
SELECT * FROM user WHERE sex = sexflag;
end;
“;
mysql_query($sql);//建立一個myproce4的儲存過程
$sql = “set @sexflag = 1”;
mysql_query($sql);//設定性別引數為1
$sql = “call test.myproce4(@sexflag);”;
mysql_query($sql);//呼叫myproce4的儲存過程,在cmd下面看效果
例項五:使用變數的儲存過程
$sql = “
create procedure myproce5(in a int,in b int)
begin
declare s int default 0;
set s=a+b;
select s;
end;
“;
mysql_query($sql);//建立一個myproce5的儲存過程
$sql = “call test.myproce5(4,6);”;
mysql_query($sql);//呼叫myproce5的儲存過程,在cmd下面看效果
例項六:case語法
$sql = “
create procedure myproce6(in score int)
begin
case score
when 60 then select `及格`;
when 80 then select `及良好`;
when 100 then select `優秀`;
else select `未知分數`;
end case;
end;
“;
mysql_query($sql);//建立一個myproce6的儲存過程
$sql = “call test.myproce6(100);”;
mysql_query($sql);//呼叫myproce6的儲存過程,在cmd下面看效果
例項七:迴圈語句
$sql = “
create procedure myproce7()
begin
declare i int default 0;
declare j int default 0;
while i<10 do
set j=j+i;
set i=i+1;
end while;
select j;
end;
“;
mysql_query($sql);//建立一個myproce7的儲存過程
$sql = “call test.myproce7();”;
mysql_query($sql);//呼叫myproce7的儲存過程,在cmd下面看效果
例項八:repeat語句
$sql = ”
create procedure myproce8()
begin
declare i int default 0;
declare j int default 0;
repeat
set j=j+i;
set i=i+1;
until j>=10
end repeat;
select j;
end;
“;
mysql_query($sql);//建立一個myproce8的儲存過程
$sql = “call test.myproce8();”;
mysql_query($sql);//呼叫myproce8的儲存過程,在cmd下面看效果
例項九:loop語句
$sql = “
create procedure myproce9()
begin
declare i int default 0;
declare s int default 0;
loop_label:loop
set s=s+i;
set i=i+1;
if i>=5 then
leave loop_label;
end if;
end loop;
select s;
end;
“;
mysql_query($sql);//建立一個myproce9的儲存過程
$sql = “call test.myproce9();”;
mysql_query($sql);//呼叫myproce9的儲存過程,在cmd下面看效果
例項十:刪除儲存過程
mysql_query(“drop procedure if exists myproce”);//刪除test的儲存過程
例項十:儲存過程中的遊標
總結中。
相關文章
- mysql如何呼叫儲存過程MySql儲存過程
- MySQL儲存過程語句及呼叫MySql儲存過程
- 呼叫儲存過程儲存過程
- mysql多次呼叫儲存過程的問題MySql儲存過程
- linux呼叫儲存過程Linux儲存過程
- Winform呼叫儲存過程ORM儲存過程
- SQL 儲存過程裡呼叫另一個儲存過程SQL儲存過程
- mysql 儲存過程MySql儲存過程
- jsp中呼叫儲存過程JS儲存過程
- MySQL之儲存過程MySql儲存過程
- MySQL---------儲存過程MySql儲存過程
- mysql儲存過程整理MySql儲存過程
- Sqlsugar呼叫Oracle的儲存過程SqlSugarOracle儲存過程
- Mysql 儲存過程的使用MySql儲存過程
- Oracle 儲存過程分頁 + Sqlsugar呼叫Oracle儲存過程SqlSugar
- MySQL儲存過程 (即函式)MySql儲存過程函式
- mySql 儲存過程與函式MySql儲存過程函式
- Laravel 中使用 MySQL 儲存過程LaravelMySql儲存過程
- MySql資料庫——儲存過程MySql資料庫儲存過程
- mysql儲存過程的引數MySql儲存過程
- MySQL 儲存過程和函式MySql儲存過程函式
- MySQL儲存過程和函式MySql儲存過程函式
- mssql 儲存過程呼叫另一個儲存過程中的結果的方法分享SQL儲存過程
- ibatis呼叫oracle儲存過程(極簡版)BATOracle儲存過程
- jdbc使用call呼叫儲存過程報錯JDBC儲存過程
- mysql和orcale的儲存過程和儲存函式MySql儲存過程儲存函式
- MySQL儲存過程中如何使用ROLLBACKMySql儲存過程
- Mysql 5.7儲存過程的學習MySql儲存過程
- MySQL--儲存過程與檢視MySql儲存過程
- mysql 儲存過程 procedure 批次建表MySql儲存過程
- MySQL儲存過程的建立和使用MySql儲存過程
- Springboot呼叫Oracle儲存過程的幾種方式Spring BootOracle儲存過程
- MySQL入門--儲存過程(PROCEDURE)和儲存函式(FUNCTION)MySql儲存過程儲存函式Function
- MySQL入門系列:儲存程式(三)之儲存過程簡介MySql儲存過程
- MySQL自定義函式與儲存過程MySql函式儲存過程
- Mysql儲存過程基礎(案例+程式碼)MySql儲存過程
- Mysql儲存過程中使用多遊標MySql儲存過程
- mysql檢視儲存過程show procedure status;MySql儲存過程
- MySQL 儲存過程進行切換表MySql儲存過程