我有很多sqlite3数据库(实际文件),我希望使用二进制合并算法进行合并。 为此,我使用python3 sqlite3 API将它们加载到内存中(避免了I / O开销),并开始将它们成对合并(二进制合并)。 但是,例如,在创建两个内存数据库后:
conn_mem1 = connect('file:memdb1?mode=memory&cache=shared', uri=True)
conn_mem2 = connect('file:memdb2?mode=memory&cache=shared', uri=True)
如何将一个附加到另一个?我尝试过
cur_mem1 = conn_mem1.cursor()
cur_mem1.execute('ATTACH DATABASE 'file:memdb2?mode=memory&cache=shared' AS memdb2')
但是,这似乎只是附加了一个空数据库,并且还创建了一个名称为
的空文件。memdb2?mode = memory&cache = shared
位于当前路径中的磁盘上。
如何将现有的内存数据库附加到另一个内存数据库?