【问题标题】:mysql exception while importing csv file to mysql database将csv文件导入mysql数据库时出现mysql异常
【发布时间】:2011-08-31 13:36:18
【问题描述】:

我想在 mysql 数据库中导入 csv 文件。

我的查询将如下所示。

query = "LOAD DATA INFILE '"+filename+"' INTO TABLE testtable FIELDS TERMINATED BY ',' (text,price)";

但我在导入文件时遇到以下错误。

java.sql.SQLException: 用户 'root'@'%' 的访问被拒绝(使用密码:YES)

完整的源代码你可以看http://www.javalobby.org/java/forums/t53674.html

非常感谢任何帮助。

谢谢。

【问题讨论】:

标签: mysql load-data-infile sqlexception


【解决方案1】:
【解决方案2】:

如错误所示,您应该仔细检查 user-password-host-db 组合是否正确。这就是错误告诉你的内容。

【讨论】:

  • 谢谢jancha。我的用户名、密码和数据库名是绝对正确的,但我仍然遇到同样的错误。
  • 如果我尝试了其他 sql 语句,那么它工作正常。但是当我触发以下查询时,我得到了同样的错误。 query = "LOAD DATA INFILE '"+filename+"' INTO TABLE testtable FIELDS TERMINATED BY ',' (text,price)";
  • 所以,如果您可以执行其他查询,也可能是授权问题。另外,请确保您尝试加载的文件对于执行脚本的用户是“可读的”。
  • 感谢您的帮助。我的问题现在解决了。问题是我没有加载数据的权限。
【解决方案3】:

确保您被允许以 root 身份登录数据库,并且您的连接字符串 (caspian) 中有正确的密码

Connection conn = db.connect("jdbc:mysql://localhost:3306/test","root","caspian");

【讨论】:

  • 如果我尝试了其他 sql 语句,那么它工作正常。但是当我触发以下查询时,我得到了同样的错误。 query = "LOAD DATA INFILE '"+filename+"' INTO TABLE testtable FIELDS TERMINATED BY ',' (text,price)";
  • 这很奇怪。您能否发布您的所有代码、整个异常堆栈并指出在哪一行引发了异常?谢谢
  • 感谢您的帮助。我的问题现在解决了。问题是我没有加载数据的权限。
猜你喜欢
  • 2019-09-27
  • 1970-01-01
  • 2017-11-15
  • 1970-01-01
  • 2013-08-28
  • 1970-01-01
  • 1970-01-01
  • 2019-02-21
  • 2014-03-19
相关资源
最近更新 更多