python调用mysql命令行执行sql语句的问题

我想使用命令行语句执行以下内容:
mysql -uroot -ppwd -f <abc.sql
在命令行状态输入这一句是可以正常导入的
但是当我在python中使用语句:
prog = subprocess.Popen(['mysql','-uroot,'-ppwd', '-f' ,' < abc.sql'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
out,error=prog.communicate()
来调用时,提示错误:Incorrect database name 'abc.sql'
之后我修改了一下subprocess.Popen(['mysql','-uroot,'-ppwd', '-f' ,' mydb< abc.sql'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
仍然是类似的问题
请问这个导入sql的参数需要怎么设置呢?
将abc.sql的路径设置成绝对路径也是一样的问题

第1个回答  推荐于2018-05-01
我以前遇到过
你看看
目录名称是不是有空格 MySQL\MySQL Server 5.0\
去掉空格本回答被提问者和网友采纳