
不幸的是,MySQLi 对输出sproc参数没有任何本机支持。必须将其输出到MySQL 用户变量,然后使用单独的
SELECT语句获取值。
使用程序界面:
$procInput1 = 123;$procInput2 = 456;$procInput3 = 789;$mysqli = mysqli_connect();$call = mysqli_prepare($mysqli, 'CALL test_proc(?, ?, ?, @sum, @product, @average)');mysqli_stmt_bind_param($call, 'iii', $procInput1, $procInput2, $procInput3);mysqli_stmt_execute($call);$select = mysqli_query($mysqli, 'SELECT @sum, @product, @average');$result = mysqli_fetch_assoc($select);$procOutput_sum = $result['@sum'];$procOutput_product = $result['@product'];$procOutput_average = $result['@average'];
或者,使用面向对象的界面:
$procInput1 = 123;$procInput2 = 456;$procInput3 = 789;$mysqli = new mysqli();$call = $mysqli->prepare('CALL test_proc(?, ?, ?, @sum, @product, @average)');$call->bind_param('iii', $procInput1, $procInput2, $procInput3);$call->execute();$select = $mysqli->query('SELECT @sum, @product, @average');$result = $select->fetch_assoc();$procOutput_sum = $result['@sum'];$procOutput_product = $result['@product'];$procOutput_average = $result['@average'];欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)