java如何遍历sqlite
使用 JDBC 连接 SQLite 并遍历数据
-
添加 SQLite JDBC 驱动依赖 在 Maven 项目中添加以下依赖:

<dependency> <groupId>org.xerial</groupId> <artifactId>sqlite-jdbc</artifactId> <version>3.42.0.0</version> </dependency> -
建立数据库连接

String url = "jdbc:sqlite:path/to/database.db"; Connection connection = DriverManager.getConnection(url); -
执行查询并遍历结果
Statement statement = connection.createStatement(); ResultSet resultSet = statement.executeQuery("SELECT * FROM table_name"); while (resultSet.next()) { int id = resultSet.getInt("id"); String name = resultSet.getString("name"); System.out.println("ID: " + id + ", Name: " + name); } -
关闭资源
resultSet.close(); statement.close(); connection.close();
使用 PreparedStatement 进行参数化查询
String sql = "SELECT * FROM users WHERE age > ?";
PreparedStatement pstmt = connection.prepareStatement(sql);
pstmt.setInt(1, 18);
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
// 处理结果
}
使用 try-with-resources 自动管理资源
try (Connection conn = DriverManager.getConnection(url);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM table")) {
while (rs.next()) {
// 处理每行数据
}
}
处理结果集元数据
ResultSetMetaData metaData = resultSet.getMetaData();
int columnCount = metaData.getColumnCount();
while (resultSet.next()) {
for (int i = 1; i <= columnCount; i++) {
String columnName = metaData.getColumnName(i);
Object value = resultSet.getObject(i);
System.out.println(columnName + ": " + value);
}
}
注意事项
- 确保数据库文件路径正确
- 处理 SQLException 异常
- 大型结果集考虑使用分页查询
- 敏感操作使用参数化查询防止 SQL 注入






