Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从resultset获取空行_Java_Sql_Javafx - Fatal编程技术网

Java 从resultset获取空行

Java 从resultset获取空行,java,sql,javafx,Java,Sql,Javafx,在这段代码中,我试图从数据库中获取结果集,但当我执行rs.getRow()时,输出结果为零。一切似乎都是正确的 包装申请 import java.sql.Connection; import java.sql.Date; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.Statement; import javafx.even

在这段代码中,我试图从数据库中获取结果集,但当我执行rs.getRow()时,输出结果为零。一切似乎都是正确的

包装申请

import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;

import javafx.event.ActionEvent;
import javafx.fxml.FXML;

public class FlightsController {

    private String from_airport;

    private String to_airport;

    private Date departure_date;

    public void fillTable(ActionEvent event)
    {   
        HomePageController homepage = new HomePageController();

        from_airport=homepage.getFrom();

        to_airport=homepage.getTo();

        try 
        {
            ResultSet rs;
            Class.forName("oracle.jdbc.driver.OracleDriver");
            DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
            Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl2","scott","root");
            Statement st=con.createStatement();
            String sql=" select * from routes";
            rs=st.executeQuery(sql);
            System.out.println(rs.getRow());
            rs.close();         
            con.close();
        }

        catch(Exception e)
        {
            e.printStackTrace();
        }
    }

}
在这段代码中,我试图从数据库中获取结果集,但在执行re.getRow()时,输出结果为零。一切似乎都是正确的

出什么事了?
请帮助

在您吵架之前,您需要拨打:

rs.next();
请参阅本教程: 有关如何使用
ResultSet
s的信息

方法
getRow()
给出当前行的编号,在代码中,您位于第一行之前。 见:


希望这有帮助。

在执行rs.getRow()之前,您是否尝试过rs.next()或rs.nextResult()?请(现在开始使用java命名约定,这是您的下一个问题:)这段代码足以看到后端的错误,但问题基本上与javafx无关(请将标记集中在问题上)。。关于我在这里看到的fx部分(正如Fabian在前面的问题中已经指出的),在不加载控制器的情况下实例化控制器是错误的,因为a)它的字段没有被注入,b)另一个实例超出了您的预期。请完成关于fxml的基础教程,通过修改较小的部分进行练习,只有在对基础有信心的情况下,才能继续进行complexer项目:)您实际期望得到什么?这似乎是预期的结果(请参阅)。