无法从 Python 提交 mysql 查询

Can't commit mysql query from Python

我正在尝试让一个写入 MySQL 数据库的小型 Flask 应用程序工作,但似乎数据库提交不起作用,我不知道为什么。

from flaskext.mysql import MySQL

mysql = MySQL()
mysql.init_app(app)

app.config['MYSQL_DATABASE_USER'] = 'root'
app.config['MYSQL_DATABASE_PASSWORD'] = 'root'
app.config['MYSQL_DATABASE_DB'] = 'eggsited'
app.config['MYSQL_DATABASE_HOST'] = 'localhost'

conn = mysql.connect()
cursor = mysql.connect().cursor()

cursor.execute('insert into user (id, first_name, last_name) values (%s, %s, %s)', ['324325', 'Kristoffer', 'Nielsen'])
conn.commit()

那是处理将值插入我的 table 的部分。我知道我的连接正在工作,因为我可以执行 select 语句并列出这些语句的结果并且执行语句也在工作,因为当我直接在 mysql 自动递增的 id 字段中插入新行时已经递增。所以一定是 commit 命令没有真正提交 execute 语句,但我不知道为什么。

有什么明显的我错过了吗?

来自这个问题:MySQL not updating after calling connection.commit() with Flask (WORKING)

在代码的倒数第三行,将其从 cursor = mysql.connect().cursor() 更改为 cursor = conn.cursor()。这将确保游标使用现有的数据库连接(来自上一行代码),而不是创建新的 MySQL 连接。