使用处理3.5.1来访问mySql的本地数据库。但是,我得到以下错误:java.sql.SQLException:客户端不支持服务器请求的身份验证协议。考虑升级MySQL客户端。 但是,计算机上的MySql是最新版本(8.0.15),因此这没有任何意义。我已经尝试过更改密码,因为已经提出了其他答案,但是它们没有用。
-我已经尝试过更改密码,因为已经提出了其他答案,但是它们没有用。 -我可以让它在Eclipse中正常工作,但出于我的任务,出于某种原因,我们需要使它在处理中工作。 (最差的IDE看起来像是儿童游乐场)。 -我使用的是提供的bezier库,但也尝试使用JDBC进行尝试,但会产生相同的错误消息。
import de.bezier.data.sql.*;
String dbHost = "localhost"; // if you are using a using a local
database, this should be fine
String dbPort = "3306";
String dbUser = "root"; //
String dbPass = "TestPass";
String dbName = "students";
String tableName = "user";
MySQL msql;
void setup() {
msql = new MySQL( this, dbHost + ":" + dbPort, dbName, dbUser, dbPass );
if (msql.connect()) {
msql.query("SELECT COUNT(*) FROM " + tableName);
msql.next();
println("Number of rows: " + msql.getInt(1));
println();
msql.query("SELECT * FROM " + tableName);
while (msql.next()){
String s1 = msql.getString("username");
String s2 = msql.getString("email");
println(s1 + " " + s2);
}
} else {
println("Yikes, there was an error!");
}
}
显示错误:SQL.connect():无法连接到数据库(jdbc:mysql:// localhost:3306 / students)。
java.sql.SQLException:客户端不支持服务器请求的身份验证协议。考虑升级MySQL客户端
如前所述,这在Eclipse中可以正常工作,但由于在线资源有限,无法处理数据库,因此很难找出问题所在