python - mysql.connector.errors.ProgrammingError:处理格式参数失败;Python 'list' 无法转换为 MySQL 类型
问题描述
问题已回答
我试图将一个值插入到我的表中,它通过将其与其名称匹配并将其插入到第二个表中来选择一个 ID。但是,当我打印出所选值时,它会打印 [(1,)] ,它被归类为列表。因此,当它尝试将值插入表中时,我收到错误,即当我只想要值 1 时尝试插入列表。
它的代码在python中,如下所示:
def createaudit():
sitename2_info = sitename.get()
print(sitename2_info, "testing2")
name2_info = name2.get()
print(name2_info)
name3_info = name3.get()
print(name3_info)
# Sql code for writing the data that was written in the regsitering page.
cursor = cnn.cursor()
# the site query matches the inputted username with the corresponding userID and inserts the userID into userID_fk
siteIDQuery = "SELECT siteID FROM Sites WHERE siteName = %s"
cursor.execute(siteIDQuery, [sitename2_info])
siteID_fetch = cursor.fetchall()
print(siteID_fetch)
sitequery = "INSERT INTO `audit`(`siteID_fk`, `auditor1`, `auditor2`) VALUES (%s, %s, %s)"
sitequery_vals = (siteID_fetch, name2_info, name3_info)
cursor.execute(sitequery, sitequery_vals)
# prints how many rows were inserted to make sure values are put into the database
print(cursor.rowcount)
cnn.commit()
cursor.close()
cnn.close()
解决方案
推荐阅读
- postgresql - Why does my timestamp query not return values exactly on the hour?
- android - 如何在 Flatlist 中使用单选按钮 - React Native
- windows - GetRawInputDeviceInfo 在 Windows 10 中返回错误的 USB HID 设备名称语法
- c++ - C ++:从离散分布中抽样而不进行替换
- java - 是否有任何用 Java 构建的方式来用 2 个整数的组合制作一个集合?
- database-design - 如何在 Spanner 中高效地创建强有序序列?
- c++ - 使用 SIGINT 停止计划任务
- javascript - 使用 SQL 进行 AES 加密,然后使用 Javascript 进行解密
- artifactory - 如何将 google maven 存储库添加到工件中的远程存储库
- c# - 是否有 object[] 框