python数据库查询怎么用变量_python中带变量的SQL查询

我正在制作一个程序,它是一个小学教师设置的测验的用户界面。我正在尝试使用用户在上一页键入的数据进行此查询。它正在数据库中查找与相关用户名和测验编号匹配的人。这是为了让老师看到学生们在某些测验中的表现。

这是我的密码。dbDatabase = sqlite3.connect('c:\\xampp\\cgi-bin\\MakingATable.db')

cuDatabase = dbDatabase.cursor()

Fieldstorage = cgi.FieldStorage() #what you typed in on the webpage

Quizno = Fieldstorage.getvalue("quizno")

UserID = Fieldstorage.getvalue("username")

#print (Quizno)

#print (UserID)

cuDatabase.execute ("""

SELECT Result

FROM resultstable

WHERE QuizID = '""" + str(Quizno) + """

AND UserID = '""" + UserID + "'")

for (row) in cuDatabase:

print (row)

dbDatabase.commit()

cuDatabase.close()

以下是我运行网页时收到的错误消息:40 FROM resultstable

41 WHERE QuizID = '""" + str(Quizno) + """

=> 42 AND UserID = '""" + UserID + "'")

43

44 for (row) in cuDatabase:

AND undefined, UserID = 'HuPa1'

OperationalError: near "HuPa1": syntax error

args = ('near "HuPa1": syntax error',)

with_traceback =

我还应该使用OR而不是AND,这样,如果用户没有完成测试,它将显示用户所做的任何测试。或者说,如果很多人做了一个小测验,那么老师会看到每个人,例如,做了小测验1?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值