关于sqlite3生成的转储:
$ sqlite3 db.sqlite3 .dump > db.dump.txt
在 Linux 命令 shell 上执行上述命令后,转储会按以下语法模式显示插入内容:
INSERT INTO "table" VALUES(10,'column0','column1','column2');
但我需要列名的规范,如下例所示:
INSERT INTO "table" (id, col_0, col_1, col_2) VALUES(10,'column0','column1','column2');
在 sqlite3 documentation ,我没有找到任何具体的东西。有什么想法吗?
最佳答案
获得转储后,您可以执行某种搜索/替换操作。如果“table”具有列“id”、“col_0”和“col_1”,则可以将“插入表值”替换为“插入表(“id”、“col_0”、“col_1”)值”。
您可以在您最喜欢的编辑器(例如 vim)或您选择的语言(我推荐 Python)中执行此操作。
列名可以从转储文件的“create table”行中检索。
关于python - 如何在插入时生成带有列名称的转储 sqlite3?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44147713/