php - PHP 和 MySQL 中的过程问题

标签 php mysql procedure

当我第一次运行我的程序时,我想创建以下过程:

$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/

相关文章:

php - 使用 Greasemonkey 和 PHP 下载和上传

MySQL 复杂条件选择查询

php - 在两台机器上保持 2 个 mysql 数据库相同

mysql - 发布应用后找不到数据库

mysql - mysql 中的过程内部函数

php - 验证 Google 电子邮件是否在 ajax 请求中发送

php - 直接从应用程序访问 MySQL 实际上有多不安全?

phpMyAdmin 用户级别

function - MIPS 中的函数(过程)

delphi - 当我们不知道参数时如何调用过程或函数?