Java+;MySQL与JDBC连接器错误
我正在尝试用JDBC连接器连接Java和MySQL。因此,我从下载了连接器,将其添加到类路径,并添加到eclipse的库中。 现在我使用下面的代码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
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()
方法,该方法将返回一个整数,以指示数据是否已修改。谢谢您的帮助。谢谢您的帮助。