0

我需要从 mysql 数据库中提取一些数据。我需要将其提取到 csv 文件中。这只是我需要来自数据库的某些数据。我可以使用 mysqldump 吗?

我需要从定制的后端来做。创建了一个按钮,当单击该按钮时,它应该从 csv 文件中的数据库中提取某些数据。

4

4 回答 4

3

您可以使用 mysql dump 或 query 将数据提取到 csv 文件

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

请注意,这mysql是用户编写 /`tmp/products.csv'。使用此文件时,您需要将其复制到您自己的工作目录中,以便该文件获取您的权限。

根据您的 MySQL 版本,如果不先删除文件,您可能无法再次运行此命令。这样做的原因是您可能会收到一条错误消息,指出该文件已存在。因此,在第二次运行该命令之前,您可能必须成为 root 才能从“/tmp”中删除该文件。

于 2013-10-24T06:10:31.407 回答
1

您可以使用:

* mysqldump –tab=/path/for/export

或尝试使用:

* mysql -h remote_host -e “SELECT * FROM my_schema.my_table” –batch –silent > my_file.csv

希望这可以帮助!

来源:http: //blogs.devart.com/dbforge/export-mysql-table-to-csv-file-methods-overview.html

于 2013-10-24T05:51:00.697 回答
0

或者使用 phpMyadmin 将数据导出为 CSV

于 2013-10-24T05:47:23.460 回答
0

此解决方案适用于非 root 用户。从远程数据库服务器上的表中提取数据:

$ mysql -u user_name -p -e "use database_name; SELECT * FROM table_name" -B | sed "s/'/\'/;s/\t/\",\"/g;s/^/\"/;s/$/\"/;s/\n//g" > file_name.csv

从服务器检索文件:

$ scp user_name@server_address:file_name.csv file_name.csv
于 2018-04-14T00:52:00.620 回答