python - 无法通过仅检索记录的一列来删除记录。有什么见解吗?
问题描述
我做了什么:
我创建了一个表项,(在带有 mysql 连接的 python 中,将所述表存储在 mysql 数据库中),其中包含 3 列(ICODE、INAME、ITYPE)。然后,我创建了一个带有 3 个文本框的 tkinter gui 窗口,允许用户输入 ICODE、INAME、ITYPE 输入。它有两个按钮,添加项目和删除项目。
我正在尝试做的事情:
我编写了以下代码来接受 ICODE 并删除具有输入 ICODE 的记录
代码:
def delitem():
icode=tcode.get("1.0","end-1c")
#Database Connection
if icode=="":
tk.messagebox.showinfo("Please enter a code")
else:
import mysql.connector as sqltor
connection=sqltor.connect(host="localhost",user="root",passwd="
",database="apparelstore")
tkcursor=connection.cursor(prepared=True)
sql="delete from item where icode=%s"
val="icode"
tkcursor.execute(sql,val)
connection.commit()
tk.messagebox.showinfo("Item deleted")
tkcursor.close()
错误:
执行准备好的语句的参数数量不正确
解决方案
声明tkcursor.execute(sql, val)
应该是:
tkcursor.execute(sql,(val,))
推荐阅读
- .net - .NET Core 更新迁移正在尝试再次重新创建表
- swift - 泛型类型“DataResponse”专用于太少的类型参数(得到 1,但预期为 2)
- docker - Docker 堆栈部署不使用最新的更新容器
- if-statement - 我们如何在 buildbot 构造中使用 python 元素和条件语句?
- file - 如何在emacs中列出文件
- java - 继续询问用户输入,直到整数介于两个数字之间
- c++ - 如何生成订购向量的所有方式
- sqlite - 在带有 group by 的外部查询的 select 子句中使用子查询
- database - 数据库连接脚本在 4 次成功连接后崩溃
- java - 我想从输入文件中的行中读取值并将它们用作对象的构造函数参数