您的位置:

php开发中mysql存储过程(简述mysql与php的整合过程)

本文目录一览:

php调用mysql存储过程,如何实现。 我的代码如下:

mysql存储过程返回2个资源,第一个是执行信息,第二个是存储过程返回结果。

mysql_*系列函数无法获取超过1个资源,需使用mysqli或PDO代替。

PDO:

        $stmt = $db-prepare("CALL pro_rb_save(?,?,@return_msg);");  

        $stmt-bindParam(1, $a);

        $stmt-bindParam(2, $b);

        $stmt-execute ();

        $outputArray = $db-query("select @return_msg")-fetch(PDO::FETCH_ASSOC);

        

        var_export($return_msg);

php 怎么调用,mysql 存储过程 exec,烦死了

         1。执行 call procedure()语句。

            也就是mysql_query("call proceduer([var1]...)");

          2. 如果有返回值,执行select  @ar,返回执行结果。

             mysql_query("select @var)"

             接下来的操作就和php执行一般的mysql语句一样了。可以通过mydql_fetch_row()等函数获得结果。

          如果时函数。 直接执行 select function() 就可以了。

 

 $host="localhost";

    $user="root";

    $password="11212";

    $db="samp_db";

    $dblink=mysql_connect($host,$user,$password)

            or die("can't connect to mysql");

 mysql_select_db($db,$dblink)

      or die("can't select samp_db");

    $res=mysql_query("set @a=$password",$dblink);

    $res=mysql_query("call aa(@a)",$dblink);

    $res=mysql_query("select @a",$dblink);

    $row=mysql_fetch_row($res);

    echo $row[0];

PHP下如何创建MYSQL存储过程

直接上代码:

mysql_connect("localhost","user","pwd");

mysql_select_db('testdata') or die (mysql_error());

$sql = "create procedure tb_neaten (in rec int,in pa varchar(15),in qy decimal(10,2),in ar varchar(6))

begin

update test1 set qty=qty-qy where recordnum=rec;

insert into test2 set bname=pa,area=ar,qty=qy,date=date_format(now(),'%Y%m%d'),time=date_format(now(),'%Y%m%d');

end;";

mysql_query($sql) or die (mysql_error());

若是存储过程里含有捕获select结果的语句时,需在mysql_connect时调整参数

mysql_connect("localhost","user","password",1,131072) 

执行时,直接运行

 mysql_query(tb_neaten(va1,va2,va3,va4));