2016-07-06 1 views
0

В моем скрипте python что-то не так: когда я пытаюсь поместить некоторые данные в свою базу данных и распечатать их, похоже, что он работает, но когда я перезапускаю код или проверяю phpmyadmin, нет данных, сохраненных в db. Кто-нибудь знает, как решить эту проблему?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 не хранятся в надлежащем db, но только временно?] (Http://stackoverflow.com/questions/1387573/mysql-insert-data-does-not-get-stored-in-proper -db-only-tempor) – spectras

ответ

0

Вам нужно будет добавить conn.commit() перед тем conn.close(). Это должно решить проблему.

+0

Вы правы, большое спасибо! – Racerider

Смежные вопросы