首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将数据从一个SQLite数据库复制到另一个数据库

将数据从一个SQLite数据库复制到另一个数据库
EN

Stack Overflow用户
提问于 2010-03-02 05:30:34
回答 5查看 121.4K关注 0票数 159

我有两个SQLite数据库,有相同的数据,但用途不同,我想避免重新插入数据,所以我想知道是否可以将整个表从一个数据库复制到另一个数据库?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-03-02 05:43:06

您必须使用ATTACH命令将数据库X与数据库Y连接起来,然后为要传输的表运行适当的Insert Into命令。

代码语言:javascript
运行
复制
INSERT INTO X.TABLE SELECT * FROM Y.TABLE;

或者,如果列没有按顺序匹配:

代码语言:javascript
运行
复制
INSERT INTO X.TABLE(fieldname1, fieldname2) SELECT fieldname1, fieldname2 FROM Y.TABLE;
票数 187
EN

Stack Overflow用户

发布于 2016-11-01 11:03:27

在一行中使用最简单和正确的方法:

代码语言:javascript
运行
复制
sqlite3 old.db ".dump mytable" | sqlite3 new.db

主键和列类型将被保留。

票数 67
EN

Stack Overflow用户

发布于 2015-10-23 16:48:34

对于一次性操作,您可以使用.dump和.read。

转储来自old_db.sqlite的表my_table

代码语言:javascript
运行
复制
c:\sqlite>sqlite3.exe old_db.sqlite
sqlite> .output mytable_dump.sql
sqlite> .dump my_table
sqlite> .quit

假设表不存在,将转储文件读取到new_db.sqlite中

代码语言:javascript
运行
复制
c:\sqlite>sqlite3.exe new_db.sqlite
sqlite> .read mytable_dump.sql

现在,您已经克隆了表。要对整个数据库执行此操作,只需在.dump命令中省略表名。

额外的好处:数据库可以有不同的编码。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2359205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档