2014-10-01 69 views
4

我有一個包含字典作爲元素的列表。所有的字典都面對我的模式,是否有一種簡單或有效的方式來在sqlalchemy中使用db來插入這些細節?使用sqlalchemy高效地插入字典列表

我的列表如下

[{id:'12',name:'a':lang:'eng},{id:'13',name:'b':lang:'eng},{id:'14',name:'c':lang:'eng}] 

,我有以下

id String(10) 
name String(10) 
lang String(10) 
+0

請參閱['執行多個語句'](http://docs.sqlalchemy.org/en/rel_0_9/core/tutorial.html#executing-multiple-statements)官方文檔的一部分 – van 2014-10-01 13:07:50

回答

5

給出模式作爲SQLAchemy documentation所述,您可以致電connection.execute()方法在你的table插入多條記錄,使用table.insert()和您的記錄列表,因爲它的參數如下:

connection.execute(table.insert(), [ 
     {'id':'12','name':'a','lang':'eng'}, 
     {'id':'13','name':'b','lang':'eng'}, 
     {'id':'14','name':'c','lang':'eng'}, 
    ] 
) 

當然,假設您的table確實具有您的字典鍵中所述的那些列名稱,並且您的值不會違反您可能已定義的任何約束條件。

+1

順便說一下,字典鑰匙應該被引用:) – cimarie 2016-11-21 20:05:43

+0

@cimarie我剛剛編輯了我的答案。非常感謝你! – tilacog 2016-11-21 21:14:36