使用所有 table 值创建 sqlite3 转储文件

creating sqlite3 dump files with all table values

我可以用

生成一个 sqlite3 转储文件
sqlite3 app.db .dump > app_dump.sql

但是,如果该数据库中有一行没有条目,它就会被遗漏在转储文件中。当使用转储文件将数据读入另一个数据库时,这是一个问题。有没有办法强制转储文件具有 table 中定义的所有值?因此,如果没有条目,它只是使用空字符串 '' 或类似的东西? 谢谢 卡尔

.dump 的输出始终包括所有 table 行:

sqlite> create table t(x);
sqlite> insert into t values (null), (0), (''), (x'');
sqlite> select * from t;

0


sqlite> .dump
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE t(x);
INSERT INTO "t" VALUES(NULL);
INSERT INTO "t" VALUES(0);
INSERT INTO "t" VALUES('');
INSERT INTO "t" VALUES(X'');
COMMIT;