gpt4 book ai didi

python - 在MySQL上执行插入,没有错误但也没有插入

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

注意:我对 Python 还很陌生,所以问题可能是任何问题。

  • Python:3.6
  • MySQL:8

我有一个 MySQL 数据库设置,可以通过 Python 成功查询,所以我确信我的连接正常。我可以在 MySQL Workbench 中插入记录,所以我相当确定数据库没问题。但是,当我运行以下代码时,我没有收到错误(“完成”确实打印,“错误”不打印)。但是,该记录并未被插入。

import mysql.connector

cnx = mysql.connector.connect(user='furby',
password='something',host='127.0.0.1', database='mydb')
cursor = cnx.cursor()

document_root = ET.fromstring(semester.read('data'))
semester_name = document_root.get("Name")
print(semester_name)
query = ("SELECT semester_id
FROM StudentData.semesters
WHERE name = '%s'")
cursor.execute(query % semester_name)
cursor.fetchall()
print(cursor.rowcount)
if (cursor.rowcount == 0):
print("hi")
start_date = document_root.get("StartDate")
end_date = document_root.get("EndDate")
notes = document_root.get("Notes")
try:
query = "INSERT INTO StudentData.semesters
(name, start_date, end_date, notes) VALUES
('" + semester_name + "', '" + start_date + "',
'" + end_date + "', '" + notes + "')"
print(query)
cursor.execute(query)
except:
print("error")

print("done")

我遇到了很多错误,但突然间,没有错误了。不过,一定有什么错误吧?

我在这里做错了什么,会阻止记录插入而不产生任何类型的错误?

编辑在Douglas的回答之后,我改为打印SQL插入语句,然后将其复制并粘贴到SQL Workbench中。同样,它通过 python 运行它不执行任何操作,但在 SQL Workbench 中运行确实会按预期插入记录。

最佳答案

我认为你应该关闭光标。你的连接是自动提交的吗?请检查它,并且你应该提交它!

关于python - 在MySQL上执行插入,没有错误但也没有插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53480515/

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