繁体   English   中英

SQlite JDBC - 结果集值返回 NULL

[英]SQlite JDBC - ResultSet value returns NULL

我正在尝试显示数据库中的电影标题,问题是如果我调用rs.getString()方法,它总是返回null 数据库表正确配置了一列/两行,并连接到java应用程序,所以我不知道问题出在哪里..

这是我的 class,我从主 function 呼叫:

import java.sql.*;

public class Driver {
    public Driver() {
        Connection c = null;
        
        try {
            Class.forName("org.sqlite.JDBC");
//            DriverManager.registerDriver(new org.sqlite.JDBC());
            c = DriverManager.getConnection("jdbc:sqlite:test.db");
            
            Statement stmt = c.createStatement();
            
            ResultSet rs = stmt.executeQuery("SELECT * FROM Movies");
            
            rs.next();
            System.out.println(rs.getString("title"));    // <---- prints null
           
            stmt.close();
            c.close();
            
            
        } catch(Exception e) {
            e.printStackTrace();
        }
    }
} 

3件看起来很奇怪的事情:

  1. 您甚至在使用第一个结果集之前就在使用 rs.next() 。
  2. 它不在循环中,这意味着无论有多少行,您都只会得到第一个结果
  3. 你在一个字符串(getString)中返回它,所以我认为它不会正确返回它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM