2016-07-06 2 views
0

내 파이썬 스크립트에 뭔가 잘못되었습니다 : 데이터베이스에 데이터를 넣고 인쇄하려고하면 작동하는 것처럼 보이지만 코드를 다시 실행하거나 확인하면 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 데이터가 임시 데이터베이스에만 저장되지 않습니까?] (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

관련 문제