【发布时间】:2019-11-29 16:41:42
【问题描述】:
我正在尝试从sqlite 数据库中删除一条记录。我使用dbeaver 程序进行所有操作。因此,当执行该操作时,会显示以下错误:
错误表明唯一键不存在。表创建查询是这样的:
CREATE TABLE betGroups (
id INTEGER PRIMARY KEY AUTOINCREMENT,
betgroupstatus INTEGER NOT NULL,
dateInserted DATETIME DEFAULT CURRENT_TIMESTAMP)
但是,如果我们检查唯一键选项卡 - 我们将看到存在唯一键:
所以基本上,primary key 被认为是unique key。尽管如此,仍然显示错误。
是否有很好的解释为什么我会收到此错误?我尝试为 id 字段添加 UNIQUE 关键字。表已创建,但没有任何区别。我还可以在程序选项或 SQL 脚本中更改什么以使错误消失。
我不确定这是我的脚本问题、驱动程序问题还是程序问题。
使用:
- org.sqlite.JDBC 3.28.0
- dbeaver 6.1.1
【问题讨论】:
-
显示您是如何尝试删除行的?
-
选择一行并按下键盘上的 DELETE 按钮。然后,在页面底部,您将看到一个
save按钮(以及cancel)。 -
所以你不是手动输入删除语句?那么,这是该工具的问题,而不是 sqlite。
-
@Shawn 还是我的创建查询被破坏了?但评论仍然有效..这个问题可能与任何一个有关。所以我也向 dbeaver 提交了一个错误。让我们看看谁反应更快:) github.com/dbeaver/dbeaver/issues/6337
标签: sqlite dbeaver sqlitejdbc