【问题标题】:Java SQLite Select QueryJava SQLite 选择查询
【发布时间】:2016-04-07 07:11:25
【问题描述】:

我正在尝试完成我的 Java 代码以执行将结果写入 Sysout 的 SELECT 查询。

这是我的代码:

public void PullFromDB() {

    Connection c = null;
    Statement stmt = null;
    try {
        Class.forName("org.sqlite.JDBC");
        c = DriverManager.getConnection("jdbc:sqlite:test.db");
        c.setAutoCommit(false);

        String sql = "SELECT * FROM " + Name + ";";
        stmt = c.createStatement();
        ResultSet rs = stmt.executeQuery(sql);

        System.out.println(sql);

        while (rs.next()) {

            Integer ID = rs.getInt("id");
            System.out.println("ID = " + ID.toString());

            String entry = rs.getString(Properties.get(j));
            System.out.println(Properties.get(j) + "=" + entry);
            j++;

        }

        rs.close();
        stmt.close();
        c.close();
    } catch (Exception e) {
        System.err.println(e.getClass().getName() + ": " + e.getMessage());
        System.exit(0);
    }

}

当我 sysout 我的 SQL 查询时,它看起来像这样:

CREATE TABLE IF NOT EXISTS Cars(ID INTEGER PRIMARY KEY AUTOINCREMENT,AnzSitze TEXT,Marke TEXT,Pferdestärke TEXT);

INSERT INTO Cars(AnzSitze,Marke,Pferdestärke) VALUES('vier','Audi','420');

SELECT * FROM Cars;

这些只是我放的一些例子。

【问题讨论】:

  • 你有什么问题?
  • 我的 Select 语句没有得到任何结果
  • 可能创建和propabley插入失败,我看到文件名Pferdestärke中没有ascii字符尝试使用有效名称

标签: java sqlite select resultset


【解决方案1】:

可能创建和propabley插入失败,我在文件名Pferdestärke中看到无ascii字符尝试使用有效名称

check this

不带引号的标识符中允许的字符:

ASCII:[0-9,a-z,A-Z$_](基本拉丁字母,数字 0-9,美元, 下划线)

扩展:U+0080 .. U+FFFF

所以将所有 qrys 中的文件名 Pferdestärke 替换为 Pferdestarke 并重试

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-09
    • 2014-04-29
    • 1970-01-01
    • 2013-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-18
    相关资源
    最近更新 更多