Python SQL不更新以前的条目
API仍然是新手,所以请原谅任何新手的错误 在这里,我从另一个端口接收输入,然后将其发送到PUT方法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_
@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。它起作用了