这个赋值有什么问题吗,总是报错的
sid=int(input(">>>请输入需要查询的学生学号>>>")) sql="select id,name,sex,yuwen,shuxue,yingyu from stuInfo1 where id=%s" try: cursor.execute(sql,sid) results=cursor.fetchall() for info in results: id=info[0] name=info[1] sex=info[2] yuwen=info[3] shuxue=info[4] yingyu=info[5] print("学号:%s,姓名:%s,性别:%s,语文:%s,数学:%s,英语:%s"%(id,name,sex,yuwen,shuxue,yingyu)) except: traceback.print_exc() db.rollback() db.close()
cursor.execute(sql % sid) sid是作为一个参数传入sql语句的,所以要用%,现在在python中,input默认输入的是字符串,如果sql语句语句中id为int类型, 还需要做一个转换
for循环前print(results)给个结果看下?