对于客户端数据存储方案——SQLite的思考

SQLite 比较适合进行本地小型数据的存储,在功能丰富性和并发能力上不如 MySQL。

数据类型差异

  • SQLite 使用动态类型系统:只有 5 种基本存储类 (NULL, INTEGER, REAL, TEXT, BLOB)

  • 类型亲和性:SQLite 会将声明的列类型映射到最接近的存储类

  • 与 MySQL 的严格类型系统不同,SQLite 更灵活但可能缺少某些特定类型

SQL 语法差异

  • 自增字段 :SQLite 使用 AUTOINCREMENT 关键字而非 AUTO_INCREMENT

  • LIMIT 子句 :SQLite 使用 LIMIT offset, countLIMIT count OFFSET offset

  • INSERT 语句 :SQLite 使用 INSERT OR IGNORE,并非 INSERT IGNORE

  • 外键约束 :默认禁用,需要 PRAGMA foreign_keys = ON

功能限制

  • 用户管理:SQLite 没有用户概念,依赖文件系统权限

  • 网络访问:SQLite 是本地数据库,不能通过网络直接访问

管理工具差异

  • 没有类似 MySQL 的 mysql 命令行客户端,而是 sqlite3 命令行工具

  • 备份方式不同:SQLite 通常直接复制数据库文件

相关推荐
聆听。。花开雨落4 小时前
mybatis的typeHandler 作用
数据库·mybatis
pxzsky5 小时前
PG17数据库安装中分分词插件:pg_jieba
数据库·postgresql·pg_jieba
她说可以呀6 小时前
Redis哨兵
数据库·redis·bootstrap
霸道流氓气质6 小时前
KMS 密钥管理服务(Key Management Service)原理与实践
linux·服务器·数据库
kirs_ur6 小时前
CXL(Compute Express Link)— 内存扩展的未来
服务器·数据库·性能优化
MonolithIoT8 小时前
实战方案|设备备件无人值守仓库:连续化产线运维备件 7×24 小时数字化管控方案
运维·网络·数据库
瞬间&永恒~8 小时前
【MySQL】4-6:在同一个主机上使用 systemd 运行多个 MySQL服务器
服务器·数据库·mysql
心机之蛙qee8 小时前
Redis的主从、哨兵及集群
数据库·redis·缓存
gwf2169 小时前
磨损均衡算法(Wear Leveling)——SSD如何让每块闪存“公平退休“?
运维·数据库·人工智能·python·嵌入式硬件·算法·智能硬件