【问题标题】:PHP + MySql + Stored Procedures, how do I get access an "out" value?PHP + MySql + 存储过程,我如何访问“out”值?
【发布时间】:2010-09-08 01:37:30
【问题描述】:

严重缺乏与使用 PHP 的 mysql 中的存储过程有关的任何文档。我目前有一个通过 PHP 调用的存储过程,如何获取 out 参数的值?

【问题讨论】:

    标签: php mysql stored-procedures mysqli


    【解决方案1】:

    这个帖子好像已经回答了:

    http://forums.mysql.com/read.php?52,198596,198717#msg-198717

    使用 mysqli PHP API:

    假设 sproc myproc( IN i int, OUT j int ):

    $mysqli = new mysqli(  "HOST", "USR", "PWD", "DBNAME" );
    $ivalue=1;
    $res = $mysqli->multi_query( "CALL myproc($ivalue,@x);SELECT @x" );
    if( $res ) {
      $results = 0;
      do {
        if ($result = $mysqli->store_result()) {
          printf( "<b>Result #%u</b>:<br/>", ++$results );
          while( $row = $result->fetch_row() ) {
            foreach( $row as $cell ) echo $cell, "&nbsp;";
          }
          $result->close();
          if( $mysqli->more_results() ) echo "<br/>";
        }
      } while( $mysqli->next_result() );
    }
    $mysqli->close();
    

    【讨论】:

      【解决方案2】:

      这是一个如何使用 mysql、mysqli 和 pdo 执行此操作的示例:

      http://www.joeyrivera.com/2009/using-mysql-stored-procedures-with-php-mysqlmysqlipdo/

      【讨论】:

        猜你喜欢
        • 2011-06-23
        • 1970-01-01
        • 2014-10-14
        • 2012-07-26
        • 1970-01-01
        • 1970-01-01
        • 2013-03-22
        • 2011-06-07
        相关资源
        最近更新 更多