【1】、TypeError: an integer is required
错误提示 示例根据错误提示判断可能产生问题点,再根据提示的代码行以及语句进行定位,通过这些参数再次定位,最后发现3306不应该加引号,去掉后就正常了。
【2】AttributeError: 'Cursor' object has no attribute 'commit'
提示Cursor没有XX属性理解错误,认为数据库事务的提交是游标的属性,然事实并不是,游标更像是一个标记(指针),告诉使用者当前操作的位置(纯属个人理解)
解决方法,将self.cur.commit()修改为self.cur.commit()即可,其实换一个角度来说,事务本身就属于数据库的功能点
【3】查询结果和数据库结果不一致
因为语句的位置写错了,先执行了查询,后执行了插入的方法,所以导致两者结果对应不上
【4】关键字拼写错误 将execute写为了exeute
拼写错误拼写错误很容易犯,静态检查时不会检查拼写错误,只能在运行程序时才会被发现,提示的意思是“赋值之前引用的局部变量'results'”(google是这么翻译的)
提示UnboundLocalError解决方法:results未定义?但是python不需要提前定义,results是否有值?
打印results的值发现是results无值导致错误,那就可以确定问题点就在selectall方法块,其实通过debug的方式能更快的定位到问题点
【5】print "Mysql Error %d:%s"%(e.args[0], e.args[1])
看%d和%s知道对应的应该是错误码和错误信息,但还是想看看实际结果
示例最后的最后推广下课程哈
网友评论