我有以下代码,并抛出TypeError:execute()接受2到3个位置参数,但给出了7个.我不确定是否正确,但是这里是:
result_time = cur.execute("SELECT appointment_ID FROM appointments WHERE appointment_time =%s",[appointment_time],"AND appointment_date =%s",[appointment_date],"AND doctor_ID =%s",[actual_doctor_ID.get('doctor_ID')])
因此,当满足所有要求时,我想要一个特定的约会ID.最佳答案@H_404_13@cursor.execute接受sql和一个参数元组-您单次给这些参数-因此您“塞满了”它并得到
TypeError: execute() takes from 2 to 3 positional arguments but 7 were given
更改您的代码包含1个SQL语句和一个带params的元组:
result_time = cur.execute( "SELECT appointment_ID FROM appointments WHERE appointment_time = %s AND appointment_date = %s AND doctor_ID = %s",( appointment_time,appointment_date,actual_doctor_ID.get('doctor_ID')) )
它会工作.
cursor.execute( slq,( param1,param2,... ) ) # this is all a tuple - hence the 2nd allowed param to execute.
见f.e. myslq-documentation或使用http://bobby-tables.com/python作为快速参考. 总结
以上是内存溢出为你收集整理的python-TypeError:execute()需要2到3个位置参数,但是给出了7个 全部内容,希望文章能够帮你解决python-TypeError:execute()需要2到3个位置参数,但是给出了7个 所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)