MySQL表为空,即使它已通过Python填充

时间:2019-06-21 16:29:59

标签: python mysql

我编写了一个python脚本,以通过excel数据填充MySQL表。 在Python脚本的最后,我打印出表的内容:

    SmsManager smsManager = SmsManager.getDefault();
               smsManager.sendTextMessage("number", null,
                       "message", null, null);

我得到了正确的结果:

mycursor.execute("SELECT * FROM Cities")

rows=mycursor.fetchall()

for r in rows:
    print r

但是当我通过My​​SQL Workbench打开表时,它是空的。通过常规终端,我得到了相同的结果:

(1, u'Muenchen', 2.0, 3.32, 1, 1)
(2, u'Augsburg', 0.7, 1.008, 1, 1)
(3, u'Frankfurt', 1.1, 1.694, 1, 2)
(4, u'Wiesbaden', 0.3, 0.405, 1, 2)

出什么问题了?

1 个答案:

答案 0 :(得分:5)

您需要COMMIT更改

  

MySQLConnection.commit() Method

     

此方法向MySQL服务器发送COMMIT语句,以提交当前事务。由于默认情况下Connector / Python不会自动提交,因此在每次使用事务存储引擎修改表数据的事务之后调用此方法很重要。

>>> cursor.execute("INSERT INTO employees (first_name) VALUES (%s)", ('Jane'))
>>> cnx.commit()
>>> cnx.close()