[英]SQLAlchemy use ID in other column when inserting (possibly even with sqlsoup)
[英]Inserting data with SQLAlchemy uses column defaults when providing other values
我無法覆蓋列默認值。 我為subject
和can_retry
插入了一個具有不同值的行。 但是,當我檢查表時,仍然是Math
和False
。 我在這里做錯了什么?
from sqlalchemy import *
db = create_engine('sqlite:///myapp-quizzes.db')
metadata = MetaData(db)
quizzes = Table("quizzes", metadata,
Column("id", Integer, primary_key = True),
Column("subject", String, default = "Math"),
Column("description", String),
Column("answer_a", String),
Column("answer_b", String),
Column("answer_c", String),
Column("answer_d", String),
Column("can_retry", Boolean, default = False)
)
quizzes.create()
i = quizzes.insert()
i.execute({
"subject": "Biology",
"description": "Where is the heart?",
"answer_a": "In the head",
"answer_b": "In the arm",
"answer_c": "In the gut",
"answer_d": "Dunno",
"can_retry": True
})
列表中的字典必須具有完全相同的鍵。 當然,這適用於帶有字典的多個插入。
quizz_list = [
{
...
'subject': 'Math',
'can_retry': False
},
{
...
'subject': 'Biology',
'can_retry': True
}
]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.