java - SQLite 外键约束

标签 java sql sqlite foreign-keys sqlitejdbc

我正在使用 Java SQLiteJDBC .

我一直在努力理解为什么我的外键没有起到约束作用,直到我读到以下内容:

在 3.6.19 版本之前,SQLite 不支持外键约束。

然后我仔细查看了 SQLiteJDBC 网站,发现:

当前版本是 v056,基于 SQLite 3.6.14.2。

记录了一个解决方案 here ,虽然这是一篇很老的文章 - 它仍然是继续的最佳方法吗?是否会推荐其他 SQLite Java 连接器?

最佳答案

Java 中的 SQLite 支持似乎 not be so great .

您也许能够重建javasqlite针对较新版本的 SQLite,因为它取决于:

SQLite 2.4.12 or higher

它是否真的有效还有待观察,但我认为 SQLite 有一个相当稳定的 API。

您还可以尝试构建 SQLiteJDBC from source针对较新版本的 SQLite。

编辑:

实际上,Xerial SQLiteJDBCupdated much more recently 。显然它要慢很多,因为它是纯 Java 的。

关于java - SQLite 外键约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9831060/

相关文章:

java - Recyclerview 没有正确显示 SQlite 数据库数据

iphone - 在 iPhone 上更新 SQLite 数据库

java - 使用复选框过滤联系人并获取电话号码

java - 关于Java中经典n-Queens的实现问题

java - 如何从命令行运行单个 gradle 任务

c# - 如何使用 SqlDataReader 读取行数

c# - 这段 Winform C# 代码有什么问题?它在 Windows 中运行良好,但在 mono(Linux) 中,将抛出 NullReferenceException

sql - EXEC Select 语句与动态列将值存储到变量中

java - 在某些情况下使用双引号解析 CSV

android sqlite 从列表菜单中删除