2014-10-07 63 views
0

最近我使用python模塊dataset來操縱和存儲信息。因此,我有一個sqlite數據庫的集合,讓說file1.db,file2.db等。而且,每個數據庫都包含相同的表格。使用python數據集模塊檢查許多sqlite數據庫

隨着數據集,我可以很容易地連接,並與代碼檢查數據庫:

>>> db1 = dataset.connect('sqlite:////path/file1.db') 
>>> table1 = db1[u'tweet'] 

假定我想保留在許多文件分開的數據庫,什麼是檢查所有數據集數據庫的最好方法是什麼?

我期待在更好的東西這樣的:

>>> db1 = dataset.connect('sqlite:////path/file1.db') 
>>> db2 = dataset.connect('sqlite:////path/file2.db') 
>>> tables = [db1[u'tweet'],db2[u'tweet']] 
>>> for table in tables: 
     for tweet in table: 
      print(tweet['text']) 

回答

0

我不知道一個乾淨的解決方案,這一點,但它可能是有趣的使用內存中的SQLite數據庫對於這種情況:

mem_db = dataset.connect('sqlite:///') 
databases = ['sqlite:////path/file1.db'] 

for uri in databases: 
    db1 = dataset.connect(uri) 
    for row in db1['table']: 
     mem_db.insert(row) 

還有一個insert_many調用,我相信,這對於批量傳輸來說可能更快。