2017-02-18 218 views
0

我想使用列表中的字符串作爲我創建的sqllite數據庫中的列名稱。目前,我有下面的代碼(使用SQLAlchemy的):從列表中創建sqlite表列Python

db = create_engine('sqlite:///strings.db') 
db.echo = False 
metadata = MetaData(db) 
lang_array = [] 
lang_array.append(Column("id", Integer, primary_key = True)) 
for lang in lang_keys: 
    lang_array.append(Column(lang, String)) 

strings = Table("strings", metadata, lang_array) 

哪裏lang_keys是字符串列表。是否有可能在上面的Table方法中傳遞一個列表?我收到錯誤AttributeError: 'list' object has no attribute 'schema。我在這裏做錯了什麼?

回答

1

您可以使用append_column()方法:

strings = Table("strings", metadata) 
for column in lang_array: 
    strings.append_column(column) 
+0

完美!謝謝! – KexAri

+0

很高興聽到這一點。乾杯! – metmirr