mysql存儲過程,mysql中存儲過程

存儲過程procedure

存儲過程,其本質還是函數——但其規定:不能有返回值;

定義形式:

3d542624da2e781b37a2d7abec11dd6b.png

說明:

1,in:用於設定該變量是用來“接收實參數據”的,即“傳入”;默認不寫,就是in

2,out:用於設定該變量是用來“存儲存儲過程中的數據”的,即“傳出”,即函數中必須對它賦值;

3,inout:是in和out的結合,具有雙向作用;

4,對於,out和inout設定,對應的實參,就“必須”是一個變量,因為該變量是用於“接收傳出數據”;

調用存儲過程:

call  存儲過程名 (實參1,實參2,.... )

它應該是在“非編程環境中”調用,即執行增刪改查的場景下;

舉例1:

#創建一個存儲過程:

#該存儲過程的目標是:將3個數據寫入到表tab_int;

#並返回該表的第一個字段的前3大值的行

d47a288c92ebe461b5290c40a3ea9639.png

調用:

a60202374f284841bd5c349ac289b302.png

舉例2(使用in,out,inout):

91024ddf9e8b3b61d2165d2b03ddad85.png

下面使用正確調用方法:

e713f1f2af8cd8d223c2e94a95ae725f.png

刪除存儲過程:

drop  procedure  存儲過程名;

在php中使用存儲函數或存儲過程的示意

//調用存儲函數:

$v1 = $_POST[‘a’];

$v2 = $_POST[‘b’];

$sql = “insert  into  tab1  (id,  f2,  f3)  values ( null,  now(),  func1($v1 , $v2 )  )”;

$result  =  mysql_query($sql);

http://www.qwangxiao.com/t/henan/

//調用存儲過程:

$v1 = $_POST[‘username’];

$v2 = $_POST[‘pass’];

$v3 = $_POST[‘age’];

$sql = “ call   insert_user($v1, $v2,  $v3 ); ”; //insert_user()是一個存儲過程,帶3個參數,會將該3個參數數據寫入(insert)某個表中。

$result = mysql_query();

另一個使用存儲過程返回結果集的例子:

$id = $_GET[‘id’];

$sql = “call  Get_User_Info( $id )  “; //Get_User_Info()是一個存儲過程,其中會返回某個指定id的用戶信息

$result = mysql_query($sql); //這里得到的就是“結果集”了

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值