这里是我的SQLite表如何使用jdbc在java中准备语句读取sqlite文本列?
CREATE TABLE hello (
id INTEGER PRIMARY KEY AUTOINCREMENT,
import_data text,
export_data text
);
这里是我的Java代码
Connection sqliteConnection = DriverManager.getConnection(db);
PreparedStatement preparedStatement = sqliteConnection.prepareStatement("select * from hello where export_data = ?;");
preparedStatement.setString(1, "ABD19E3C63"); // hex string
ResultSet resultSet = preparedStatement.executeQuery();
resultSet.next();
importData = resultSet.getString("import_data");
System.out.println(importData); // prints nothing although I checked in the sqlite database that it exists.
所以IMPORTDATA打印什么,尽管我可以在它存在的SQLite数据库看到。不知道为什么?
SQLite的查询
select hex(import_data) from hello where hex(export_data)="ABD19E3C63"; // This works
上面的查询工作在SQLite的,虽然我宣布两列文本
您是否尝试直接从SQLite运行此确切查询? –
是的。我只是在我的问题上加了这个。 – user1870400
我对你的数据集并不熟悉,但是如果查询不能在SQLIite中工作,那么它在调用SQLite的Java中可能不起作用。 –