【发布时间】:2017-03-13 16:18:22
【问题描述】:
我正在创建一个程序,允许用户从菜单中选择 2 个化学元素,然后告诉他们这两者之间的反应结果。我知道我的数据库正在工作,并且我正在尝试创建两个可以在程序中的任何位置更改的变量。这是我到目前为止的代码,使用了我知道正确结果的 2 个值:
import sqlite3
conn = sqlite3.connect('Experiment_simulator_database.db')
c = conn.cursor()
firstchoice = 1
secondchoice = 36
sqlcommand = "SELECT Outcome_ID FROM Reactions WHERE Choice_1 = firstchoice AND Choice_2 = secondchoice"
c.execute(sqlcommand)
result = c.fetchone()
print(result)
如何让 select 语句中的 firstchoice 和 secondchoice 采用我上面指定的值?
【问题讨论】:
-
参考
str.format。 -
@AshishNitinPatil - 使用
str.format()可能会导致 SQL 注入漏洞。 Obligatory XKCD -
哦,是的,当然,OP 必须清理他们的输入 :)
标签: python sql variables select sqlite