2015-01-09 51 views
2

扩展的INSERT如何更改mysqldump输出样式?

INSERT INTO table (id) VALUES (1),(2); 

扩展的INSERT语句中写入数据都在同一行,结果是非常难读。

我想是这样的:

INSERT INTO table (id) VALUES 
(1), 
(2); 

希望有人能帮助我,在此先感谢!

回答

0

可以得到的最接近的是使用--skip-extended-insert。

这会给你:

INSERT INTO table (id) values (1); 
INSERT INTO table (id) values (2); 

如果你要处理的输出,都出现在该行的同一位置的数据(根据列的数目和他们的名字的长度)和有很多像这样的重复的文本将压缩以便通过电线发送。

+0

对不起,我不想这个,这个解决方案效率不高。 – pangpang

+0

:-)从某种意义上讲,这不是有效的?一方面,--skip-extended-insert是mysqldump的一个众所周知的选项,它给你的输出非常规律(列名长度不会改变),并使用脚本将mysqldump输出转换为精确你想要的输出是微不足道的。如果您发现MySQL的某些模糊特性或者更复杂的解决方案,那么您就可以准确输出所需的输出结果,从长远来看效率会更低。特别是当你忘记它是如何工作的或者不得不重新构建它来做一些稍微不同的事情时。 –