Format Atlas

对比

SQLite 与 CSV

SQLite 是保存表、索引和模式的关系数据库文件。CSV 是交换行列值的文本格式,本身不保存数据库关系或约束。

应该选择哪种格式?

需要 SQL 查询、多张表、索引、约束和事务时使用 SQLite;向其他应用交付一张表时可导出为 CSV。明确导出的表、列名和类型、NULL 与空文本、编码、前导零、日期和引号规则,并另行记录 CSV 无法承载的结构。

适用于 SQLite 数据库

SQLite 应用的本地数据存储 · 桌面和移动应用中的嵌入式数据库

  • 无需单独运行数据库服务器即可使用 SQL
  • 将应用数据保存在便于携带的文件中

适用于 CSV

表格数据交换

  • 在应用间传递一个简单表格

基本信息

项目SQLite 数据库CSV
扩展名.sqlite, .sqlite3, .db.csv
MIME 类型text/csv
常见用途SQLite 应用的本地数据存储 · 桌面和移动应用中的嵌入式数据库表格数据交换
打开方式运行期间只复制主文件可能导致备份不一致导入电子表格时请设置字符编码和分隔符。检查前导零、类似日期的值和长数字不会被自动转换。
导出或转换使用 SQLite 数据库工具或 sqlite3 打开。不要用文本编辑器修改二进制文件;一致性备份请使用 SQLite 备份功能。将XLSX导出为CSV通常只写出一个选定工作表的值。请另行保留公式、格式、其他工作表和图表。

按用途选择

无需单独运行数据库服务器即可使用 SQL

SQLite 应用的本地数据存储 · 桌面和移动应用中的嵌入式数据库

SQLite 数据库

将应用数据保存在便于携带的文件中

SQLite 应用的本地数据存储 · 桌面和移动应用中的嵌入式数据库

SQLite 数据库

在应用间传递一个简单表格

表格数据交换

CSV

关键点 1

SQLite 文件可保存 SQL 表行、模式、索引、视图和触发器。CSV 通常是带可选表头的文本记录,不表达表间关系、索引或约束。

进一步了解差异

关键点 2

SQLite 支持 SQL 查询、连接、更新、约束和事务。CSV 需要应用解析,列类型及 NULL 的含义需另行约定。

进一步了解差异

进一步了解差异

数据库行为或结构重要时保留 SQLite;需要可移植的单表交换时导出 CSV。备份 SQLite 时使用一致性备份机制,不要随意复制正在使用的数据库文件。

  • CSV 导出通常只包含选定表的值,不包含索引、约束、视图、触发器或多表关系。
  • 复制 SQLite 文件时要考虑 WAL 或 journal 状态,并采用能得到一致数据库的备份方法。

常见问题

导出 SQLite 为 CSV 会保留整个数据库吗?

不会。它通常只导出所选表的表格值;普通 CSV 不携带模式行为、索引、触发器或表间关系。

了解详情

参考资料与规范