2016-07-06 19 views
0

我的python腳本中存在錯誤:當我嘗試將一些數據放入數據庫並打印出來時,它看起來像是在工作,但是當我重新運行代碼時,或者如果檢查phpmyadmin,沒有數據保存在數據庫中。有沒有人對如何解決這個問題有一些想法?Python不會在MySQL服務器中註冊

import mysql.connector 
from mysql.connector import errorcode 


def connect(): 
    """ Connect to MySQL database """ 
    try: 
     conn = mysql.connector.connect(host='localhost', 
             database='Temperature', 
             user='Temperature', 
             password='mypass') 
     if conn.is_connected(): 
      print('Connected to MySQL database') 
      cur = conn.cursor() 

      query = "INSERT INTO Temp(temp, humi) " \ 
      "VALUES(315, 55)" 
      try: 
       cur.execute(query) 
      except MySQLdb.ProgrammingError as e: 
       print(e) 

      query = "SELECT * FROM Temp" 
      try: 
       cur.execute(query) 
       for reading in cur.fetchall(): 
        print (str(reading[0])+" "+str(reading[1])) 
      except MySQLdb.ProgrammingError as e: 
       print(e) 

    except Error as e: 
     print(e) 

    finally: 
     conn.close() 


if __name__ == '__main__': 
    connect() 
+0

你忘了提交。 – spectras

+0

[MySQL INSERT數據沒有存儲在適當的數據庫中,只是暫時的?](http://stackoverflow.com/questions/1387573/mysql-insert-data-does-not-get-stored-in-proper -db-only-temporary) – spectras

回答

0

您需要conn.close()之前添加conn.commit()。這應該可以解決問題。

+0

你說得對, 非常感謝你! – Racerider

相關問題