我可以用
生成一个sqlite3转储文件sqlite3 app.db .dump > app_dump.sql
但是,如果该数据库中有一行没有条目,则只在转储文件中省略。使用转储文件将数据读入另一个数据库时,这是一个问题。有没有办法强制转储文件在表中定义所有值?因此,如果没有条目,它只使用空字符串''或类似的东西? 谢谢 卡尔
答案 0 :(得分:1)
.dump
的输出始终包含所有表格行:
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;