MySQL将查询输出导出为CSV
问题描述:
[Windows 7上的MySQL Workbench 6.2]MySQL将查询输出导出为CSV
我可以导出单击MySQL工作台导出图标的查询结果。请参见下面的图片:
不过,我需要在不同的循环反复这样做,所以我想将其包含在我的脚本。
我曾尝试:
SELECT * from TABLENAME where ID = 123456 INTO OUTFILE 'C:/Users/username/Desktop/test.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n';
我也尝试过的文件路径与\\
代替/
,同时还与LINES TERMINATED BY '\r \n'
正如我在其他职位都看到了。
当我尝试这样做,我得到Permission Denied [Errcode 13]
尽管我已经碎我的用户文件权限在MySQL命令客户端也用下面的代码:
USE mysql;
UPDATE user SET File_priv = 'Y' WHERE User = 'db_user';
FLUSH PRIVILEGES;
任何想法,为什么它仍然没有工作?任何好的选择也是值得欢迎的!
答
这是由于mysql的文件夹访问权限。所以使用下面的路径来写入csv文件。
C:\\Users\\<user_name>\\AppData\\Local\\Temp
假设你的系统有用户名ABC,那么你的查询应该是。
SELECT * from TABLENAME where ID = 123456 INTO OUTFILE 'C:\\Users\\ABC\\AppData\\Local\\Temp\\test.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n';
感谢您的回答Miya G.不幸的是,我不断收到相同的错误:/ – user3507584 2014-12-03 17:44:22
可以请用sql查询粘贴完整的错误吗? – 2014-12-03 17:45:03
这是错误代码:1.无法创建/写入文件'C:\ Users \ username \ Desktop \ foldername \ outfiletest.csv'(Errcode:13 - Permission denied)' – user3507584 2014-12-03 17:47:54