【发布时间】:2022-01-20 13:39:15
【问题描述】:
我正在尝试在存储员工信息的类中创建一个 def。我无法将数据添加到表中。我不太确定我哪里出错了,在查看其他帖子后我似乎无法找到解决方案。
def create_db(self):
name = input('Enter first name: ')
surname = input('Enter last name: ')
age = int(input('Enter age: '))
email = input('Enter e-mail address: ')
number = int(input('Enter number: '))
country = input('Enter country: ')
city = input('Enter city: ')
id = random.randint(0,9999)
query = "INSERT INTO employees (id, name, surname, age, email, number, country, city) VALUES (%s, %s)"
value = f"'{id}', '{name}', '{surname}', '{age}', '{email}', '{number}', '{country}', '{city}'"
self.mycursor.execute(query, value,)
self.db.commit()
我认为这与最后 4 行有关,但可能不正确。感谢您提前提供任何帮助。
【问题讨论】:
-
这是作业吗?是否有任何堆栈跟踪、错误日志等?需要的不仅仅是代码。
-
如果您解释一下您用于连接数据库的库类型,您使用的数据库以及错误消息是什么,将会有所帮助。
-
value应该是要插入的值的tuple或list。在 SQL 语句中,%s占位符的数量应该等于值的数量。有关这方面的更多信息,请参阅链接的副本。 -
对不起,我正在使用 MySQL 连接器,我现在遇到的问题是它运行但不提交到本地主机服务器。