gpt4 book ai didi

python - 我的 python 代码写在一个临时数据库中

转载 作者:行者123 更新时间:2023-11-29 06:00:32 31 4
gpt4 key购买 nike

我编写了一个 python 代码,用于在 MySQL 数据库中写入/读取数据。问题是即使在我写完之后,表格仍然是空的。当我关闭程序时,我丢失了所有数据。这就是我创建表格的方式:

cursor.execute("CREATE TABLE IF NOT EXISTS employees (id INT UNSIGNED NOT  NULL AUTO_INCREMENT,Name VARCHAR(20) NOT NULL,LastName VARCHAR(20) NOT NULL,Post VARCHAR(20) NOT NULL,RasID SMALLINT UNSIGNED NOT NULL,PRIMARY KEY (id)) ENGINE=INNODB;")

这是我在表中插入数据的方式:

cursor.execute("INSERT INTO employees VALUES (NULL, %s, %s, %s, %s);",(UserName, UserLastName, UserPost, int(data['RasID'])))

这就是我从表中选择数据的方式:

cursor.execute("SELECT * FROM employees WHERE Name= %s;",(Jmsg['face'],))

这是我在表中插入数据并且程序仍在运行后得到的结果:

mysql> select * from employees;
Empty set (0.00 sec)

注意:当程序仍在运行时,我可以在插入数据后选择数据,但正如我提到的,表格是空的。那么,代码是写在临时表中还是什么?

最佳答案

尝试

connection.commit()

您可能在此处使用的 MySQL 连接器/Python 不会自动提交,这意味着您必须手动执行此操作以将更改“推送”到数据库。

您可能希望在每次执行之后提交,但有时您也可能会尝试运行它以节省带宽(但这样您就有可能在某些情况下丢失您的更改出错了)。

关于python - 我的 python 代码写在一个临时数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45321281/

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