wxSQLite3SQLite 3.x 数据库的C++包装器
wxSQLite3 是一个围绕 SQLite 3.x 数据库的C++包装器,专门用于基于wxWidgets库的程序。
wxSQLite3不会尝试隐藏底层数据库,相反,几乎支持当前SQLite3版本的所有特殊功能,例如创建用户定义的标量或聚合函数。
由于SQLite以UTF-8编码存储字符串,因此wxSQLite3方法提供了wxStrings和UTF-8字符串之间的自动转换。这最适合wxWidgets的Unicode构建。在ANSI构建中,当前的语言环境转换对象(wxConvCurrent)用于转换为UTF-8或从UTF-8转换。如果使用外部管理工具修改数据库内容,则必须特别小心,因为并非所有这些工具都以Unicode或UTF-8模式运行。
从版本1.7.0开始,wxSQLite3包含一个使用AES加密的基于密钥的SQLite3加密扩展。是否使用128位或256位AES加密的决定必须在编译时进行。从版本4.0.0开始,加密扩展允许在运行时选择密码方案。目前支持以下加密方案:
- AES 128 Bit CBC - No HMAC (wxSQLite3)
- AES 256 Bit CBC - No HMAC (wxSQLite3)
- ChaCha20 - Poly1305 HMAC (sqleet)
- AES 256 Bit CBC - SHA1/SHA256/SHA512 HMAC (SQLCipher)
评论