在Python中使用Sqlite3模块更新表

在Python中使用Sqlite3模块更新表,python,Python,我正在进行一个项目,每当用户重置密码时,我需要更新用户表中指向userid作为主键的password列。我正在根据用户从控制台输入的值传递用户名和密码以更新_table函数,下面是我的代码片段- def sql_update_table(conn, username, reset_password): c = conn.cursor() #value = (username, reset_password) #c.execute('''UPDATE user SET pa

我正在进行一个项目,每当用户重置密码时,我需要更新用户表中指向userid作为主键的password列。我正在根据用户从控制台输入的值传递用户名和密码以更新_table函数,下面是我的代码片段-

def sql_update_table(conn, username, reset_password):
    c = conn.cursor()
    #value = (username, reset_password)
    #c.execute('''UPDATE user SET password = ? WHERE userid = ? ''', value)
    c.execute('''UPDATE user SET password = reset_password WHERE userid = username''')
    conn.commit()
我尝试了两种情况,一种是使用#中提到的元组传递值,另一种是不使用#直接传递值。但是,对于第一种情况,没有错误,但是表没有使用新的password值更新,对于后面的一种情况,我得到的错误如下-

sqlite3.OPERATIONERROR:没有这样的列:重置\u密码

请帮我解决这个问题。
提前谢谢

你能试着换一下吗

c.execute('''UPDATE user SET password = reset_password WHERE userid = username''')


这回答了你的问题吗?谢谢你的回复。然而,我已经试过了,下面也试过了。表未得到更新。value=(username,reset_password)c.execute('''UPDATE user SET password=?WHERE userid=?'',value)在打印值时,我以元组格式获取更新的值,但不确定为什么不在中更新Table@SameerRanjanSahoo值应括在括号中。请尝试一下这个c.execute('''updateuserset password=?WHERE userid=?'',(username,reset_password)),好的,我已经尝试过了。结果和以前一样。表未更新。
c.execute('''UPDATE user SET password = ? WHERE userid = ? ''', (username,reset_password))