Java+;MySQL与JDBC连接器错误

Java+;MySQL与JDBC连接器错误,java,mysql,jdbc,Java,Mysql,Jdbc,我正在尝试用JDBC连接器连接Java和MySQL。因此,我从下载了连接器,将其添加到类路径,并添加到eclipse的库中。 现在我使用下面的代码 import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class LocalhostDBCon

我正在尝试用JDBC连接器连接Java和MySQL。因此,我从下载了连接器,将其添加到类路径,并添加到eclipse的库中。 现在我使用下面的代码

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


    public class LocalhostDBConnection 
    {   
        LocalhostDBConnection()
        {
        Connection connection;
        try {
            // Название драйвера
            String driverName = "com.mysql.jdbc.Driver"; 

            Class.forName(driverName);

            // Create a connection to the database
            String serverName = "localhost";
            String mydatabase = "AvtoKovriki";
            String url = "jdbc:mysql://" + serverName + "/" + mydatabase;
            String username = "root";
            String password = "";

            connection = DriverManager.getConnection(url, username, password);
            System.out.println("is connect to DB" + connection);

            String query = "Select * FROM users";
            Statement stmt = connection.createStatement();

            ResultSet rs = stmt.execute(query);
            String dbtime;
            while (rs.next()) 
            {
                dbtime = rs.getString(1);
                System.out.println(dbtime);
            } // end while

            connection.close();
        } // end try
        catch (ClassNotFoundException e) 
        {
            e.printStackTrace();
            // Could not find the database driver
        } catch (SQLException e) 
        {
            e.printStackTrace();
            // Could not connect to the database
        }
        }
    }
但是在字符串中:ResultSet rs=stmt.execute(查询);出现错误“类型不匹配:无法从布尔值转换为结果集”。 我不明白是什么问题。需要一些帮助。

该方法返回一个
布尔值。您正在寻找该方法,该方法返回一个
ResultSet

您的代码应该如下所示:

ResultSet rs = stmt.executeQuery(query);
该方法返回一个
布尔值。您正在寻找该方法,该方法返回一个
ResultSet

您的代码应该如下所示:

ResultSet rs = stmt.executeQuery(query);

首先,这与MySQL没有任何关系——您没有达到运行代码的程度,并且您的代码都没有处理MySQL特定类型的代码。(我的观点是,MySQL jar文件可能在正确的位置,也可能不在正确的位置;这个错误不是因为这个原因。)

如果您查看有关的文档,您将看到它返回的是
布尔值
,而不是
结果集
。这就是为什么会出现编译时错误


相反,您可以调用
execute(String)
,如果返回true,则调用
getResultSet

,首先,这与MySQL无关-您没有运行代码,并且没有一个代码处理MySQL特定的类型。(我的观点是,MySQL jar文件可能在正确的位置,也可能不在正确的位置;这个错误不是因为这个原因。)

如果您查看有关的文档,您将看到它返回的是
布尔值
,而不是
结果集
。这就是为什么会出现编译时错误


您可以调用
execute(String)
,如果返回true,则调用
getResultSet

您需要使用
executeQuery(stringsql)
方法

有关所提供方法的更多详细信息,请参见javadocs


您需要使用
executeQuery(字符串sql)
方法

有关所提供方法的更多详细信息,请参见javadocs

返回布尔值而不是结果集。你可以 使用
stmt.executeQuery()
方法对不会 修改数据库中的数据

如果要修改数据库中的数据,请使用
executeUpdate()
方法,该方法将返回一个整数以指示数据是否已修改

返回布尔值而不是结果集。你可以 使用
stmt.executeQuery()
方法对不会 修改数据库中的数据


如果要修改数据库中的数据,请使用
executeUpdate()
方法,该方法将返回一个整数,以指示数据是否已修改。

谢谢您的帮助。谢谢您的帮助。