java - 如何删除 sqlite 中的行/行(java,不是 Android java)

标签 java sqlite sql-delete

需要从 sqlite 数据库中删除记录。一次一个记录行和/或具有特定字符串值的所有记录。 我读了很多帖子,大多数似乎是针对 Android 的,与纯 Java 有很大不同 - 没有找到我需要的东西。

这是我正在尝试的代码片段(delString 来自文本字段),我没有设置记录 ID。:

    Class.forName("org.sqlite.JDBC");
    Connection conn = DriverManager.getConnection("jdbc:sqlite:dufuss.db");

    delIt = Dialog_RecToDelete.delString; 
    String sql = "DELETE * FROM " + TABLE_NAME + " WHERE docName = ?";
    PreparedStatement preparedStatement = conn.prepareStatement(sql);
    preparedStatement.setString(1, delIt);
    ResultSet rs = preparedStatement.executeQuery();

    while (rs.next()) {
      // iterate through results
    }
  rs.close();
  conn.close();

最佳答案

根据documentation ,它应该只是 DELETE FROM ...,所以删除 DELETE * FROM ... 中的 *

此外,您应该使用 PreparedStatement#executeUpdate而不是 PreparedStatement#executeQuery

关于java - 如何删除 sqlite 中的行/行(java,不是 Android java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17179534/

相关文章:

java - 流口水:限时规则

Java jackson : Deserialize JSON with dynamic Names into JavaClass

Python PyQT4 简单数据库 GUI

performance - Sqlite追加数据性能线性下降,这个可以解决吗?

java - 并发运行 100,000 个进程

java - 对象标识在java中意味着什么?

c# - SQLite 错误 : no such table

mysql - 在 MySQL 中从 HAVING COUNT(*) 中删除

mysql - mysql 中的多个 DELETE 不适用于别名

mysql 5.6.35 DELETE FROM错误1054