如何将MySql Workbench中的表数据导出到csv?


76

我想知道如何将表数据导出到csv中?我读到我需要使用mysql workbench命令行,但是我不知道如何启动cmd行(不知道命令是什么)。

在Windows 7 64位上运行。


1
这种类型的问题是否更适合另一个SE网站?也许我误解了这个问题,但从应用程序导出数据似乎更像是“如何在应用程序中使用此功能”而不是“如何通过API以编程方式执行此操作”类型的问题。:)
summea

Answers:


71

您可以在MySQL Workbench SQL编辑器中从要导出的表中选择行。您将在结果集中找到一个“导出”按钮,该按钮可让您将记录导出到CSV文件,如下图所示:

MySQL Workbench导出结果集按钮

还请记住,默认情况下,MySQL Workbench将结果集的大小限制为1000条记录。您可以在“首选项”对话框中轻松更改它:

MySQL Workbench首选项对话框

希望这可以帮助。


好。我将尝试希望它能够处理显示近一百万行的情况。
chobo2 2013年

1
恐怕一百万这个钱太贵了。如果这是你的情况你最好与stackoverflow.com/questions/356578/...
塞尔吉奥·

尝试对二进制数据执行此操作时遇到麻烦。不想弄乱编码,所以我只是重新编写了我们的一个应用程序,以便在产品和测试之间移动数据。但是,如果您有任何想法,我很想读em。
Patrick M

1
@Sergio仅供参考,他们已经更新了图标,现在的过程有所不同。现在有一个名为“导出/导入”的部分,带有一个用于导出的软盘的图标。
2015年

这是旧的屏幕截图。这个答案也需要更新和版本信息/屏幕路径也需要提供。
8bitjunkie

62

U可以使用mysql dump或查询将数据导出到csv文件

SELECT *
INTO OUTFILE '/tmp/products.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n'
FROM products

1
我不知道为什么这个答案不是一个可以接受的答案,即使对于十万条记录,它也像魅力一样起作用!我用了180,000条记录,它是在0.18秒内完成的。:-)
物理

11
是的,它的速度要快得多,但是您需要访问数据库主机上的文件,但这并不总是适用于所有人……
phil_w 2015年

得到此错误“ ERROR 2002(HY000):无法通过套接字'/var/lib/mysql/mysql.sock'连接到本地MySQL服务器”。请让我知道解决方法
Barani r

我知道这是一个旧答案,但是我想添加另一个项目以跟进@phil_w响应:此外,可能未授予MySQL用户写入文件的权限,但仍可以使用MySQL Workbench。
花花公子

36

MySQL Workbench 6.3.6

导出SELECT结果

  • 运行SELECT查询>导出结果后...

    查询导出结果

导出表数据

  • 在导航器中,右键单击表>“表数据导出向导”

    表数据导出

  • 默认情况下,所有列和行都包括在内,因此单击下一步

  • 选择“文件路径”,键入“字段分隔符”(默认情况下为;,而不是,!!!),然后单击“下一步”

    CSV

  • 单击下一步>下一步>完成,然后在指定位置创建文件


1
这个答案需要扩展到包括如何禁用导出结果集的默认限制
8bitjunkie 18-4-10

“导出结果”不执行OP的要求。“导出表数据”可以-谢谢!
ghosh
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.