【发布时间】:2020-09-17 10:15:34
【问题描述】:
我正在处理一个需要读取 input.sql 文件并获取其中所有命令的项目。 它对所有其他语句都可以正常工作,但对于程序则无法正常工作。
您可以尝试使用这些输入自己复制它。
CREATE TABLE IF NOT EXISTS products( Prod_id INT AUTO_INCREMENT PRIMARY KEY, Name VARCHAR(255) NOT NULL, Price INT NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP); Insert into products(Name,Price) Values('soap',1); Insert into products(Name,Price) Values('toilet paper',2); Insert into products(Name,Price) Values('Choco taco',3); CREATE PROCEDURE GetAllProducts() BEGIN SELECT * FROM products; END;
但是,当我执行创建过程和调用语句时,我无法这样做。谁能帮帮我?
下面的一些语句,但它不起作用
以 connection.cursor() 作为光标:
for statement in script.split(';'): if len(statement) > 0: cursor.execute(statement + ';')
我知道问题是因为 ;定界符,但是我怎样才能确保整个过程得到执行呢?
pymysql的游标好像一次执行一条语句,不允许多次执行?
【问题讨论】:
标签: python mysql python-3.x pymysql