gpt4 book ai didi

java - Java 中的 SQLException 错误

转载 作者:行者123 更新时间:2023-11-30 11:27:33 25 4
gpt4 key购买 nike

<分区>

每当我运行这段代码时,都会出现类似这样的错误。 . .!

Exception in thread "main" java.sql.SQLException: Before start of result set
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:841)
at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5650)
at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5570)
at com.mysql.jdbc.ResultSetImpl.getDoubleInternal(ResultSetImpl.java:2463)
at com.mysql.jdbc.ResultSetImpl.getDouble(ResultSetImpl.java:2424)
at com.mysql.jdbc.ResultSetImpl.getDouble(ResultSetImpl.java:2442)
at Library.main(Library.java:157)

以下是我运行并捕获此错误的 main 代码。 . .

    System.out.println("Registration number of member returning book: ");
String number = input.nextLine();

System.out.println("Book shelf number");
double bookNumber = input.nextDouble();

double shelfNo;
String borrower;
long timeBookTaken;
long timeToReturnBook;

if(borrow.hasBeenBorrowed(bookNumber))
{
String sql = "SELECT * FROM borrowed WHERE shelfNumber = '"+ bookNumber +"'";
ResultSet rs = con.readDatabase(sql,statement);



//Statement statmnt = con.getStatement();
shelfNo = rs.getDouble("shelfNumber");
borrower = rs.getString("borrowerRegNum");
timeBookTaken = rs.getLong("timetaken");
timeToReturnBook = rs.getLong("time_to_return");

System.out.println(shelfNo+"\t"+borrower+"\t"+timeBookTaken+"\t"+timeToReturnBook);

con(是 DBConnection 类的一个实例)。 . .readDatabase 方法在 DBConnection 类中。

DBConnection class
===================


package database;

import java.sql.*;

public class DBConnection
{

private static Connection connection;
private static Statement statement;
private static ResultSet resultset;

private static String mysqlURL = "jdbc:mysql://localhost/library";
private static String mysqlUsername = "root";
private static String mysqlPassword = "";

public DBConnection()
{
try
{
Class.forName("com.mysql.jdbc.Driver");
connection
= DriverManager.getConnection(mysqlURL,mysqlUsername,mysqlPassword);
statement = connection.createStatement();

}
catch(Exception exception)
{
System.out.println("Error: "+ exception.getMessage());
}

}

public Connection getConnection()
{
return connection;
}


public Statement getStatement()
{
return statement;
}

public ResultSet readDatabase(String sql,Statement statement) throws SQLException
{
resultset = statement.executeQuery(sql);

return resultset;
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com