Python SQL不更新以前的条目

Python SQL不更新以前的条目,python,sqlite,api,Python,Sqlite,Api,API仍然是新手,所以请原谅任何新手的错误 在这里,我从另一个端口接收输入,然后将其发送到PUT方法 @app.route('/PUT', methods=['POST']) def PUT_link(): first_name = request.form['fname'] last_name = request.form['lname'] number = request.form['number'] Methods.PUT(first_name, last_

API仍然是新手,所以请原谅任何新手的错误 在这里,我从另一个端口接收输入,然后将其发送到PUT方法

@app.route('/PUT', methods=['POST'])
def PUT_link():
    first_name = request.form['fname']
    last_name = request.form['lname']
    number = request.form['number']
    Methods.PUT(first_name, last_name, number)
    return 'success'
这是一种应该更新数字的方法,但它不会

@classmethod
    def PUT(cls, first_name, last_name, number):
        connection = sqlite3.connect('data.db')
        cur = connection.cursor()
        query = "UPDATE contacts SET number=? WHERE firstname=? AND lastname=?"
        cur.execute(query, (first_name, last_name, number))
        connection.commit()
        connection.close()
        return 'Contact number updated'

number
是整数吗?如果是这样,您必须将其转换为如下整数:
number=int(request.form['number'])
否则,如果您尝试写入字符串,查询将失败。我尝试了您的解决方案,但没有成功。在其他函数中,它不使用int()将数字发布到数据库中。数据库只有在接受数字时才接受int。我认为元组中值的顺序是错误的。试试这个:
cur.execute(查询,(号码,名字,姓氏))
谢谢jignatius。它起作用了