【发布时间】:2021-06-30 16:16:31
【问题描述】:
我正在使用 Python 和 MySQLdb 向我的数据库添加行。似乎当我的脚本退出时,行被删除了。我在脚本退出前的最后几行在表格上做了一个“select *”,它显示了我的一行。当我重新运行脚本时,第一行(打开连接后)执行相同的“选择 *”并返回零结果。我在这里真的很茫然。我已经为此工作了大约 2 个小时,但无法理解什么可以访问我的数据库。
另外,在运行脚本之间,我从终端手动运行“select *”,结果为零。
如果我从终端手动添加一行,它似乎会持续。
插入行的查询:
cursor.execute("INSERT INTO sessions(username, id, ip) VALUES (%s, %s, %s)", (username, SessionID, IP]))
我用来检查数据的查询:
cursor.execute("select * from sessions")
print cursor.fetchall()
这会显示程序退出前的行,然后在程序再次运行时不显示任何内容。
提前感谢所有帮助。
【问题讨论】:
-
你使用事务吗?
-
没有。我什至不知道什么是交易。
-
你为什么不显示你的代码?
-
我猜你需要
commit你对数据库的更改。 -
听起来事务确实没有提交。
标签: python mysql mysql-python