当我第一次运行我的程序时,我想创建以下过程:
$returnCusProcedure = "
DELIMITER //
CREATE PROCEDURE GetAllCustomers()
BEGIN
SELECT * FROM CUSTOMERS;
END //
DELIMITER ; ";
if(! $returnCusProcedure )
{
die('Could not create procedure: ' . $conn->error);
}
else
{
echo "Procedure created successfully<br/>";
}
它回显该过程已成功完成,但是当我在 MySQL 中调用该过程时,它返回该过程不存在,我是否遗漏了上面的内容?
最佳答案
您必须实际执行这些 SQL 语句。它会是这样的:
$cusProcedure = "
CREATE PROCEDURE GetAllCustomers()
BEGIN
SELECT * FROM CUSTOMERS;
END"; // <-- No need to change delimiter, at least in this case
$returnCusProcedure = $conn->query($cusProcedure); // <-- Executing SQL
if(! $returnCusProcedure )
{
die('Could not create procedure: ' . $conn->error);
}
else
{
echo "Procedure created successfully<br/>";
}
关于php - PHP 和 MySQL 中的过程问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27156445/