Python3 sqlite参数化SQL查询
我一直在尝试使用Python3和sqlite模块进行参数化SQL查询,只使用一个变量就成功了。然而,当使用两个变量时,我得到了一个索引器错误:元组索引超出范围错误。关于导致此错误的原因有何建议 sql=select EXISTSELECT*从密码为“{0}”且用户名为“{1}”的用户中选择 args=var1,var2 cursor=database\u connection.executesql.formatargs 永远不要在sql命令中填写原始条目,这会导致sql注入攻击 使用内置的填充功能Python3 sqlite参数化SQL查询,python,python-3.x,sqlite,Python,Python 3.x,Sqlite,我一直在尝试使用Python3和sqlite模块进行参数化SQL查询,只使用一个变量就成功了。然而,当使用两个变量时,我得到了一个索引器错误:元组索引超出范围错误。关于导致此错误的原因有何建议 sql=select EXISTSELECT*从密码为“{0}”且用户名为“{1}”的用户中选择 args=var1,var2 cursor=database\u connection.executesql.formatargs 永远不要在sql命令中填写原始条目,这会导致sql注入攻击 使用内置的填充功
sql = "select exists(SELECT * from USERS where PASSWORD = ? AND USERNAME = ?)"
args = (var1,var2)
cursor = database_connection.execute(sql, args)
美好的您通过使用*args修复了错误,但忘了说…,并坚持正确使用参数化查询。您的建议引发TypeError:函数最多接受2个参数3个给定错误。第一行也缺少一个括号。抱歉,已修复该问题。