java - 线程中的异常 "main"java.sql.SQLException : Access denied for user '' @'localhost' (using password: NO)

标签 java mysql

Exception in thread "main" java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)
    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456)
    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at com.mysql.cj.jdbc.admin.TimezoneDump.main(TimezoneDump.java:70)

无论我做什么,我都会收到此错误。我使用 MySQL Workbench,我更改了 root 用户的密码,我已向用户 root 授予所有权限,我尝试断开连接并再次连接到数据库。没什么,无论我做什么。你能帮我解决这个问题吗?我不知道还能做什么。密码和用户名均正确。

Java 代码:

package Restaurant;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


public class MainApp {
    public void main(String[] args) throws SQLException
    {

        String url="jdbc:mysql://localhost:3306/new_schema";
        Statement sql;

        ResultSet rs;
        Connection con=DriverManager.getConnection(url, "root", "root");

        sql=(Statement)con.createStatement();
        rs=sql.executeQuery("select * from restaurant");
        while(rs.next())
        {
            System.out.println("Nume: "+rs.getString("nume")+", Specific: "+rs.getString("specificul")+", Zona: "+rs.getString("zona"));
        }


        rs.close();
        sql.close();
        con.close();
    }

}

Workbench

最佳答案

您的 eclipse 正在运行类“com.mysql.cj.jdbc.admin.TimezoneDump”(也包含一个 main 方法)而不是您的 MainApp 类。

尝试这个操作:

Right click on MainApp.java -> Run As -> Java Application

关于java - 线程中的异常 "main"java.sql.SQLException : Access denied for user '' @'localhost' (using password: NO),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59225429/

相关文章:

java - 如何使用ContentResolver Android更新与会者信息?

java - 使用流查找 Employee 及其 Parent 的值总和

Java Web 应用程序安全 : adding tokens to requests

java - 如何设置最大 tomcat gzip 压缩大小?

PHP - 在表格行中添加特定的背景颜色

Javafx:向事件添加更多上下文信息

mysql - 启用mysql查询日志

mysql - bash中取mysql数据,函数read读取每一句作为变量

mysql - 排行榜 : return 5 records, 然后是我想要的,然后还有 4 条记录

mysql - 获取相关记录没有任何其他关系的所有记录