我有3个SQLite DB,每个都有与表结构完全相同的7个表组。 [它们是来自3种不同机器的日志转储]。
我想将它们组合成一个SQLite DB,具有相同的7个表,但每个表应该具有来自所有三个DB的组合数据。因为我想在其中的3个中运行查询。 什么是最好,最快的方法。
我有3个SQLite DB,每个都有与表结构完全相同的7个表组。 [它们是来自3种不同机器的日志转储]。
我想将它们组合成一个SQLite DB,具有相同的7个表,但每个表应该具有来自所有三个DB的组合数据。因为我想在其中的3个中运行查询。 什么是最好,最快的方法。
将每个数据库导出到SQL转储,然后将转储导入新的组合数据库。
对于GUI,请看一下 http://www.sqlite.org/cvstrac/wiki?p=ManagementTools
例如,用 SQLiteStudio 那将是 数据库 > 导出数据库: 出口格式: SQL > 完成。
这是将两个数据库与相同结构的所有表合并的一种方法。我希望它可以提供帮助。
import sqlite3
con3 = sqlite3.connect("combine.db")
con3.execute("ATTACH 'results_a.db' as dba")
con3.execute("BEGIN")
for row in con3.execute("SELECT * FROM dba.sqlite_master WHERE type='table'"):
combine = "INSERT INTO "+ row[1] + " SELECT * FROM dba." + row[1]
print(combine)
con3.execute(combine)
con3.commit()
con3.execute("detach database dba")