如何使用pymysql运行插入查询脚本文件?
我为大数据制作了一个插入查询脚本文件。 (数据行数:50,000)
文件名是bulkinsert.sql,它包含如下所示的查询。
INSERT INTO test( dt, user, usertype, ip) VALUES
("2016-05-01", 3103945, , 1, "175.195.249.217"),
("2016-05-01", 3103946, , 1, "175.195.249.218"),
("2016-05-01", 3103947, , 1, "175.195.249.219"),
................
................
................
("2016-05-01", 3104000, , 1, "175.195.249.500");
我使用了pymysql,但我找不到直接插入或运行sql文件的方法。如下所示。
cursor.execute(bulkinsert.sql)
当我阅读他们的指南时,我必须阅读sql语句并执行它。但我的数据行数太多,无法阅读。他们是否可以在pymysql中导入或运行sql脚本?
答案 0 :(得分:1)
如果您不需要执行输出,则子进程可能是另一种方法。
PS:将Password
关键字替换为您自己的关键字。
from subprocess import Popen, PIPE
process = Popen(['mysql', db, '-u', user, '-pPassword'],
stdout=PIPE, stdin=PIPE)
output = process.communicate('source ' + filename)[0]