我编写了一个数据库迁移 PHP 脚本,它循环一个 SQL 文件列表并执行它们的内容。它应该有助于自动化项目设置和更新。现在我收到这样的错误:
mapCoursesToSport.sql: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELIMITER |
DROP PROCEDURE IF EXISTS mapCoursesToSport|
CREATE PROCEDURE mapCo' at line 1
当我将具有视图定义的文件传递给脚本时,我遇到了同样的错误,该文件也使用了DELIMITER
s. 然后我找到了解决方法,只是从 SQL 文件中删除分隔符。它奏效了。但现在它不是一个选项,因为存储过程确实需要定界符定义。
那么,如何从 PHP 中定义 MySQL 存储过程呢?(或者更一般地说:应该如何SDELIMITER
处理?)