gpt4 book ai didi

python - 在 python 中将变量值传递给 SQL 时出现多个参数错误

转载 作者:行者123 更新时间:2023-11-29 16:11:23 25 4
gpt4 key购买 nike

当我试图将 python tkinter 中分配的变量值传递到我设置的 SQL 数据库时,我成功地难住了自己,这是我使用的代码:

        new_db, c = SetUpDataBase()
FirstName = entry1.get()
LastName =entry2.get()
DoB =entry3.get()
Gender =entry4.get()
MobileNo =entry5.get()
HomeNo =entry6.get()
Email =entry7.get()

然后是执行语句:

       c.executescript('''INSERT INTO Patients (Last_Name, First_Name, Date_of_Birth, Gender,
Home_Phone_Number, Mobile_Phone_Number, Email) VALUES(?,?,?,?,?,?,?) ''',(LastName,FirstName,DoB,Gender,HomeNo,MobileNo,Email))

这导致了错误消息:

Home_Phone_Number, Mobile_Phone_Number, Email) VALUES(?,?,?,?,?,?,?) ''',(LastName,FirstName,DoB,Gender,HomeNo,MobileNo,Email))

类型错误:函数仅接受 1 个参数(给定 2 个参数)

以及如何解决这个问题的想法?

谢谢

最佳答案

如果您查看executescript 的文档,您会发现它只有一个参数:要运行的脚本。您向其传递两个参数:要运行的脚本和元组。 executescript 不像其他一些数据库方法那样采用参数替换。

解决方案是使用 execute 而不是 executescript

关于python - 在 python 中将变量值传递给 SQL 时出现多个参数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55223440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com