LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

SQLite 为什么总被那么多人质疑?

admin
2025年11月17日 14:52 本文热度 227

最近看到一些关于 SQLite 的讨论。


一、SQLite 用的人到底多不多?

先说答案:SQLite 是世界上使用量最大的数据库,没有之一。

你可能没意识到,但你每天都在使用 SQLite ——

  • 你的手机通讯录;
  • 微信、微博、抖音等 App 的本地缓存;
  • 各类小程序的本地数据库;
  • 无数嵌入式设备、物联网设备。

只要是需要 轻量、嵌入式、免安装 的数据库场景,SQLite 基本就是默认选择。

有人统计过:90% 以上的手机应用都在使用 SQLite

所以,从“使用量”这件事上看,它绝对是“国民级数据库”。


二、那为什么这么多人质疑 SQLite?

虽然 SQLite 用得多,但它也经常遭到质疑。网上常见的声音有:

  • “SQLite 不能用在生产环境吧?”
  • “SQLite 性能差,不适合真正的业务。”
  • “SQLite 没有 MySQL、PostgreSQL 那么专业。”
  • “SQLite 不支持并发,不适合多用户项目。”

这些质疑有些是误解,有些则是场景不匹配。


三、SQLite 的核心定位:不是 MySQL 的替代品

要理解 SQLite,首先要理解它的定位:

SQLite 是一个零配置、嵌入式、本地使用的关系型数据库。

它的目标不是取代 MySQL、PostgreSQL、Oracle,而是解决另一类问题:

  • 单机运行、无需运维;
  • 本地数据存储;
  • 小型项目或桌面应用;
  • 内嵌在 App、脚本或者设备中;
  • 开箱即用,无需部署服务。

所以如果你拿它和 MySQL 对比,就像是拿“瑞士军刀”去和“厨房刀具套装”比一样——功能虽然是重叠来,但用途完全不同。


四、SQLite 为什么被误解?4 个最典型的原因

1. 没有独立的 Server 服务,被误以为“不专业”

SQLite 就是一个动态库,程序直接调用,不需要独立的服务进程。

但很多人习惯了 MySQL 那种“服务端 + 客户端”的模式,就误以为:

“没有服务进程的数据库 = 玩具 = 不正规”。

实际上恰恰相反,SQLite 的核心代码极其精简,可靠性极高,还通过了严格的测试和规范验证。

2. 单文件存储,引发“性能有限”的误解

SQLite 把所有数据都放到一个 .db 文件中,这很方便,但也限制了并发写入能力。

所以有些人看见“锁文件”“写入阻塞”,就认定 SQLite 性能不行。

但这个限制只影响极高并发的写入场景。对于移动端、小型程序、工具类应用,这完全不是问题,妥妥的拿下。

3. 很多初学者不了解 SQLite 的优势

网上有很多“SQLite = 不能用于正式项目”的错误教学,让新手以为 SQLite 不够专业。

其实 SQLite 的作者特意强调:

SQLite 适用于极大多数应用场景,除了高并发写入的服务器端业务。

4. “生产环境”的定义不同

如果你把“生产环境”理解为:

  • 互联网大流量业务;
  • 分布式架构;
  • 多节点读写;

那 SQLite 当然不适合。

但如果你把“生产环境”理解为:

  • 手机 App;
  • 桌面软件;
  • IoT 设备;
  • 工具类应用;
  • 小程序本地存储;

那 SQLite 就是较好的解决方案之一。所以说,你的应用场景决定了使用什么样的工具最好。


五、真正理解 SQLite:不如写段代码来试试看

下面用一个简单的 Python 示例,展示 SQLite 是多么“即插即用”。

import sqlite3

# 连接数据库,如果文件不存在会自动创建
conn = sqlite3.connect('example.db')
cursor = conn.cursor()

# 创建表
cursor.execute('''
CREATE TABLE IF NOT EXISTS users (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT,
    age INTEGER
)
'''
)

# 插入数据
cursor.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('张三'28))

# 查询数据
cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()
print(rows)

conn.commit()
conn.close()

这段代码暴露了 SQLite 的 3 个绝对优势:

  1. 无需安装数据库服务(拷贝即用)
  2. 无需网络连接(本地读写)
  3. 数据库就是一个普通文件(跨平台、易迁移)

这也是为什么它能在 Android、iOS、Windows、Linux 等系统中大规模使用。


六、SQLite 的 6 大优势总结

  • 零配置: 下载即用,无需维护。
  • 稳定可靠: 核心代码极少,测试覆盖极高。
  • 速度快: 在单用户场景下速度甚至比 MySQL 更快。
  • 占用小: 动态库只有几百 KB。
  • 跨平台: 可在任何系统、任何语言中使用。
  • 单文件方便管理: 备份、迁移、复制都非常简单。

这些让它成为移动端、嵌入式场景的首选数据库。


七、SQLite 不适合哪些场景?(灰常重要)

  • 高并发写入场景
  • 大量实时写入的后端服务
  • 分布式系统
  • 大型互联网业务数据库

如果你要做:

  • 电商平台后台
  • 企业级 ERP/CRM
  • 多人协作写入系统
  • 高流量 Web 服务

请使用 MySQL、PostgreSQL,而不是 SQLite。

所以不是 SQLite 不行,而是你用错了场景。

因为很多人根本不知道 SQLite 的定位,把它当成“低配版 MySQL”。

但事实是:

  • SQLite 是“世界上使用最广泛的数据库”。
  • 它不是“低配”,而是“专精”。
  • 只要场景对口,它是最完美的工具。

每个工具都有各自的优缺点,存在即合理,不同的应用场景使用不同擅长的工具就好,别手里只有一把锤子,看到什么都是钉子。


该文章在 2025/11/17 14:52:49 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2025 ClickSun All Rights Reserved