Python-SQL更新操作;没有错误,但实际上并没有更新我的数据库



我使用python和SQL为客户帐户创建数据库。我正在尝试提供更新客户详细信息的选项。我已经做了我认为会更新表的事情,但是当我打印内容时,没有任何变化。你能告诉我哪里做错了吗?

def update_Customer(self):
    # create sqlite connection            
    conn = sqlite3.connect("lanyard.db", timeout=5)
    c = conn.cursor()
    # if texfield is empty
    if self.TextField1.get() !="":
        if self.TextField2.get() != "":
            nameChange1 = self.TextField2.get()
            CusNo = self.TextField1.get()
            c.execute("""
                UPDATE customer
                SET first_name = 'nameChange1'
                WHERE customer_id = 'CusNo'""")
            conn.commit()
        if self.TextField3.get() != "":
            nameChange2 = self.TextField3.get()
            CusNo = self.TextField1.get()
            c.execute("""
                UPDATE CUSTOMER
                SET second_name = 'nameChange2'
                WHERE customer_id = 'CusNo'""")
            conn.commit()
        if self.TextField4.get() == "":
            nameChange3 = self.TextField4.get()
            CusNo = self.TextField1.get()
            c.execute("""
                UPDATE CUSTOMER
                SET address = 'nameChange3'
                WHERE customer_id = 'CusNo'""")
            conn.commit()
    conn.commit()
    c.close()
    # clear input
    self.TextField1.delete(0, END)
    self.TextField2.delete(0, END)
    self.TextField3.delete(0, END)
    self.TextField4.delete(0, END)

您忘记了参数:

        nameChange1 = self.TextField2.get()
        CusNo = self.TextField1.get()
        c.execute("""
            UPDATE customer
            SET first_name = ?
            WHERE customer_id = ?""", (nameChange1, CusNo,) )

代码不完整。类,我假设有CREATE TABLE函数。另外,查看

的返回值
c.execute

最新更新