【发布时间】:2014-10-17 15:55:11
【问题描述】:
我有一个包含 4 个输入字段的表单,当单击提交按钮时,我会根据这 4 个输入从数据库中获取结果。我没有强迫用户输入任何输入,所以我可以让所有空白输入或其中一部分为空。用户填写的输入越多,来自数据库的结果就越精确。
我的问题是如何仅使用已填充的占位符动态构建查询的 where 部分。这是我的查询。这样,如果其中一个输入为空,则查询将不会获取任何内容,而我的意图恰恰相反:如果输入为空,则在查询数据库时不要考虑。
cursor.execute('''
SELECT name, id, gender, age, address, phones, mails, gender, age, hair_color
FROM persons
WHERE
name = ? AND
id = ? AND
gender = ? AND
age = ?
''', (name_input, id_input, gender_input, age_input))
【问题讨论】:
标签: python sqlite placeholder