一尘不染

如何从PHP代码中调用MySQL存储过程?

mysql

我已经在MySQL中创建了存储过程,并希望PHP调用该存储过程。做这个的最好方式是什么?

-MySQL客户端版本:
4.1.11 -MySQL服务器版本:5.0.45

这是我的存储过程:

DELIMITER $$

DROP FUNCTION IF EXISTS `getNodeName` $$
CREATE FUNCTION `getTreeNodeName`(`nid` int) RETURNS varchar(25) CHARSET utf8
BEGIN
 DECLARE nodeName varchar(25);
 SELECT name into nodeName FROM tree
 WHERE id = nid;
 RETURN nodeName;
END $$

DELIMITER ;

调用过程getTreeNodeName的PHP代码是什么?


阅读 362

收藏
2020-05-17

共1个答案

一尘不染

我现在通过使用mysqli代替找到了解决方案mysql

<?php

// enable error reporting
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
//connect to database
$connection = mysqli_connect("hostname", "user", "password", "db", "port");

//run the store proc
$result = mysqli_query($connection, "CALL StoreProcName");

//loop the result set
while ($row = mysqli_fetch_array($result)){     
  echo $row[0] . " - " . + $row[1]; 
}

我发现许多人似乎在使用时遇到了问题mysql_connect, mysql_query and mysql_fetch_array

2020-05-17