解决升级到 Delphi 12 后遇到 SQLite 不兼容的问题

立山  金牌会员 | 2023-12-9 20:24:43 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 923|帖子 923|积分 2769

今天升级到 Delphi 12 后,编译运行原来的项目,出现“[FireDAC][Phys][SQLite][sqlite3]-303.Capability is not supported”的错误。

经过查找文档,发现是FireDAC SQLite 版本更新导致的。
RAD Studio 12.0 支持 SQLite 3.42,同时保留了使用 FireDAC 加密(FDE)的 SQLite 3.31.1 的选项。由于 SQLite 3.42 版本放弃了 FireDAC 用于加密支持的机制,所以它不能再使用。因此,使用 FireDAC 和 SQLite 有三种不同的方式:
1、使用最新版本,不使用 FireDAC 加密。
2、使用付费的 SQLite EE(具有原生 SQLite 加密支持),FireDAC 从 RAD Studio 11.0 开始就支持了。
3、继续使用 SQLite 3.31.1 或更早版本,使用 FireDAC 加密(FDE)。
 不加密和使用付费的方式是可能的,这辈子都不可能。所以只能使用第三种方法:
只需将引用单元 “FireDAC.Phys.SQLiteWrapper.Stat” 改成 “FireDAC.Phys.SQLiteWrapper.FDEStat” 即可。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

立山

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表