Python 将字符串保存到MySQL数据库后会添加不需要的字符
我需要在peewee的帮助下更新MySQL数据库中的一个现有条目,遇到了一个非常奇怪的问题 当我将一个数字保存为字符串时,保存后会添加一些新字符 例如,当我运行以下代码时:Python 将字符串保存到MySQL数据库后会添加不需要的字符,python,mysql,peewee,flask-peewee,Python,Mysql,Peewee,Flask Peewee,我需要在peewee的帮助下更新MySQL数据库中的一个现有条目,遇到了一个非常奇怪的问题 当我将一个数字保存为字符串时,保存后会添加一些新字符 例如,当我运行以下代码时: obj = mydbtable.get(mydbtable.zid == zid) myval = "10" obj.myfield = myval obj.save() 我在PhpMyAdmin中获得以下字符串: (10,) 因此,保存后,myval的值将是(10,),而不是10 老实说,我不知道是什么原因导致了这个问
obj = mydbtable.get(mydbtable.zid == zid)
myval = "10"
obj.myfield = myval
obj.save()
我在PhpMyAdmin中获得以下字符串:
(10,)
因此,保存后,myval
的值将是(10,)
,而不是10
老实说,我不知道是什么原因导致了这个问题,因为我已经做了好几次同样的储蓄任务,并且一直像个魔术师一样工作。我试图以int
的形式传递变量,但得到了相同的结果
使现代化
保存obj
后,立即调用下面的方法可以解决问题,但此解决方法有点过火,不是最优雅的解决方案:
objy = mydbtable.get(mydbtable.zid == zid)
ooo = objy.myfield
objy.myfield = ooo.replace(',','').replace(')','').replace('(','').replace("'","")
objy.save()
看起来您正在为字段分配元组,而不是字符串或数字。我不确定您的源数据来自何处,但请检查尾随逗号(如果没有其他内容)