Java SQLite初学者
我以前没有使用过SQLite,我正在寻找是否可以使用它 我有点困惑。例如,似乎没有来自官方SQLite的与SQLite关联的jdbc驱动程序。Java SQLite初学者,java,database,jdbc,sqlite,Java,Database,Jdbc,Sqlite,我以前没有使用过SQLite,我正在寻找是否可以使用它 我有点困惑。例如,似乎没有来自官方SQLite的与SQLite关联的jdbc驱动程序。 我发现了一些提供jdbc驱动程序的帖子/站点(有些看起来是旧链接),但我不太愿意透露这些驱动程序有多稳定,或者是否缺少功能 此外,我不清楚SQLite的用法 例如,我尝试了以下代码: public static void main(String[] args) throws Exception { Class.forName("org.s
我发现了一些提供jdbc驱动程序的帖子/站点(有些看起来是旧链接),但我不太愿意透露这些驱动程序有多稳定,或者是否缺少功能 此外,我不清楚SQLite的用法 例如,我尝试了以下代码:
public static void main(String[] args) throws Exception {
Class.forName("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("jdbc:sqlite:test.db");
Statement stat = conn.createStatement();
stat.executeUpdate("drop table if exists people;");
stat.executeUpdate("create table people (name, occupation);");
PreparedStatement prep = conn.prepareStatement(
"insert into people values (?, ?);");
prep.setString(1, "Gandhi");
prep.setString(2, "politics");
prep.addBatch();
prep.setString(1, "Turing");
prep.setString(2, "computers");
prep.addBatch();
prep.setString(1, "Wittgenstein");
prep.setString(2, "smartypants");
prep.addBatch();
conn.setAutoCommit(false);
prep.executeBatch();
conn.setAutoCommit(true);
ResultSet rs = stat.executeQuery("select * from people;");
while (rs.next()) {
System.out.println("name = " + rs.getString("name"));
System.out.println("job = " + rs.getString("occupation"));
}
rs.close();
conn.close();
}
此代码在我的应用程序目录中创建一个数据库文件。所以我猜jdbc.jar创建了这个???
所以我不需要运行我下载的sqlite3.exe?我应该从哪里获得jdbc驱动程序 更新:
这是我的观点。PKeidel的一个答案中提供的链接(http://www.zentus.com/sqlitejdbc/)是指向一个似乎从2009年开始更新的站点的,您可以从这里下载JDBC驱动程序: 只有在windows pc上使用命令行时才需要sqlite3.exe。如果要使用Java访问数据库,则不需要sqlite3.exe 从Java开始,您必须: -下载JDBC驱动程序 -将其添加到项目/类路径中 -调用
Class.forName(“org.sqlite.JDBC”)代码>
-现在你可以像在你的第一篇文章中一样使用它了你提供的链接似乎从2009年起就没有更新过。此外,我不清楚jdbc jar如何在没有服务器的情况下与数据库交互感谢链接。但这是否意味着jdbc.jar包含sqlite?我在sqlitejdbc-v056.jar中看到了一些lib
文件。这些是SQLite吗?这是如何工作的?什么是官方的jdbc驱动程序?是的,“Windows、Mac OS X和Linux x86的纯驱动程序和本机二进制文件都已合并到一个jar文件中。”但哪个站点提供了更新最新的jdbc驱动程序。anwer中提供的驱动程序似乎很旧