我正在尝试使用 pymysql 在 mysql 数据库中创建一个存储过程。我有一个文件,其中包含创建存储过程的语句。我正在使用cursor.execure(line)
. 创建存储过程的查询在数据库上运行良好。但是在 python 上,他们给出了语法错误。
DELIMITER $$
USE `ipaybridge2`$$
DROP PROCEDURE IF EXISTS `masking`$$
CREATE DEFINER=`root`@`%` PROCEDURE `masking`()
BEGIN
query statements;
END$$
DELIMITER ;
我得到的错误是这样的: You have an error in your SQL syntax; it seems the error is around: 'DELIMITER $ $ USE `ipaybridge2` $ $ DROP PROCEDURE IF EXISTS `masking` $ $ CREAT' at line 1
pymsysql
不想要这些DELIMITER
陈述。因此,您应该已经连接到特定数据库,因此USE
不需要该语句。只需将以下内容cursor.execute
作为单独的命令传递给:
DROP PROCEDURE IF EXISTS `masking`
然后cursor.execute
作为下一个命令传递给:
CREATE DEFINER=`root`@`%` PROCEDURE `masking`()
BEGIN
query statements;
END
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句