php程序创建过程,如何从PHP插入/创建mySQL中的存储过程?

我有许多使用MySQL Workbench创建的存储过程.当使用MySQL工作台将它们放入我的测试数据库时,它们工作得很好.

现在我正在准备用于部署的数据库创建脚本,这是唯一一个给我带来麻烦的脚本.当我使用命令行/ mysql shell时,脚本可以很好地工作.只有当我使用PHP mysql(i)接口执行脚本时才会失败.没有评论.

我使用MySQL工作台为我生成的过程创建脚本;也就是说,它有这种模式:

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;

SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;

SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL';

在脚本的开头,然后重复每个过程:

DELIMITER $$

USE `dbname`$$

CREATE PROCEDURE `procname`(IN inputparameters)

BEGIN

…程序在这里

;

END$$

DELIMITER ;

如果从MySQL Workbench运行,此脚本可以正常工作.如果我从mysql命令行尝试相同的操作它也运行正常.但是当我通过PHP mysqli接口执行它时,它无法完成任何任务(使用mysqli_multi_query执行它,这对于创建和填充数据库的其他脚本工作正常).界面上没有返回错误,没有结果(!).

我得到的只是“假”,就是这样.错误代码为0,没有错误消息.

这对我来说是一个很大的WTF,我希望你能指出我正确的方向 – 如何解决这个问题并从PHP安装程序?

PS:给出并验证root / admin访问权限(毕竟,我刚创建了具有相同连接,创建用户,插入表等的DB).

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值