我正在尝试使用SQL
将笔记本电脑上的csv
文件上传到数据库,但是我收到了一个奇怪的错误。我在phpMyAdmin的SQL窗口中输入的代码如下:
LOAD DATA INFILE '/Users/myMac/testServerUpload.csv'
INTO TABLE `testDatabase`
FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'
但是我收到以下错误:
Error
SQL query:
LOAD DATA INFILE '/Users/myMac/testServerUpload.csv' INTO TABLE `testDatabase` FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'
MySQL said: Documentation
#1045 - Access denied for user 'ukld'@'%' (using password: YES)
我是否应该使用LOAD DATA LOCAL INFILE
而不是当前命令,因为文件在我的计算机上?两者都给我一个错误,我认为LOCAL
可能意味着它在服务器上。我找不到相关的建议来搜索这个错误。
答案 0 :(得分:2)
我遇到了同样的问题并使用LOCAL修复了它并提供了完整的文件路径:
'C:/directory/file.csv'
似乎1045错误来自无法访问服务器上的文件,如果未指定LOCAL,mySQL会查找该文件。
另见:
答案 1 :(得分:0)
您需要以root身份登录并运行:
SHOW GRANTS FOR 'ukld'@'%';
您可能没有您认为自己执行的权限...您需要对您尝试{0.0}的数据库和表格的INSERT权限。
<强>更新强>
要更正GRANT问题,请在MySQL安装中以 以root身份 运行这些语句:
LOAD DATA
确保在第二个语句中设置了正确的密码。