在MySQL中使用SQL创建大容量插入转储文件

在MySQL中使用SQL创建大容量插入转储文件,mysql,sql,Mysql,Sql,在不调用mysqldump实用程序的情况下,如何使用SQL语法从表中创建大容量insert语句 请记住,选择。。。输入输出文件“file_name”对我不起作用,因为它生成一个CSV文件,而不是以批量插入SQL格式输出,如下所示 INSERT INTO mytable VALUES (1,2), (5,5), ...; 跑 然后使用sed/perl/python/shell/whateverelse对输出CSV进行后处理,以获得SQL脚本 例如,在python中: import csv wit

在不调用mysqldump实用程序的情况下,如何使用SQL语法从表中创建大容量insert语句

请记住,
选择。。。输入输出文件“file_name”
对我不起作用,因为它生成一个CSV文件,而不是以批量插入SQL格式输出,如下所示

INSERT INTO mytable VALUES (1,2), (5,5), ...;

然后使用sed/perl/python/shell/whateverelse对输出CSV进行后处理,以获得SQL脚本

例如,在python中:

import csv
with open('dump.csv',"rU") as inf:
    reader = csv.reader(inf)
    with open("dump.sql","wb") as outf:
        for row in reader:
            outf.write('insert into mytable values ("'+ '","'.join(row)  +'");\n')

脚本无法处理
Null
s和列值中的引号字符

批量插入?您从哪里获取数据?从另一张桌子?或者您想将其保存到文件中?我是从表中获取的,我想将其保存到文件中,作为大容量插入语句。您能否提供您熟悉的任何编程语言的示例代码,我将对其进行转换。
import csv
with open('dump.csv',"rU") as inf:
    reader = csv.reader(inf)
    with open("dump.sql","wb") as outf:
        for row in reader:
            outf.write('insert into mytable values ("'+ '","'.join(row)  +'");\n')