source

Pymysql 삽입이 작동하지 않음

bestscript 2023. 1. 16. 20:07

Pymysql 삽입이 작동하지 않음

이클립스의 PyDev에서 운영하고 있는데...

import pymysql
conn = pymysql.connect(host='localhost', port=3306, user='userid', passwd='password', db='fan')
cur = conn.cursor()
print "writing to db"
cur.execute("INSERT INTO cbs_transactions(leagueID) VALUES ('test val')")
print "wrote to db"

그 결과 콘솔 상단에 C:...test.py 이라고 표시되고 콘솔에는 다음과 같이 표시됩니다.

DB에 쓰기, DB에 쓰기

따라서 execute 명령어가 실행될 때까지 종료되지 않습니다.그러나 MySQL의 테이블을 보면 비어 있습니다.레코드가 삽입되지 않았습니다.

일단은 왜 기록을 안 쓰죠?둘째, 로그 또는 오류를 확인하여 무슨 일이 일어났는지 확인하는 방법입니다.보통 코드가 실패하면 빨간색으로 표시된 오류가 발생합니다.

네가 저질렀어? conn.commit()

PyMySQL 사용 안 함autocommit디폴트로는 추가가 가능합니다.autocommit=True로.connect():

conn = pymysql.connect(
    host='localhost',
    user='user',
    passwd='passwd',
    db='db',
    autocommit=True
)

또는 콜conn.commit()삽입 후

할 수 있다

  • conn.commit()부르기 전에close

또는

  • 경유 자동 커밋 사용conn.autocommit(True)접속 오브젝트를 작성한 직후에 표시됩니다.

두 가지 방법 모두 여기에서 찾을 수 있는 질문의 중복으로 다양한 사람들로부터 제안되었습니다: 데이터베이스는 MySQL과 Python에서 자동으로 업데이트되지 않습니다.

언급URL : https://stackoverflow.com/questions/20485332/pymysql-insert-into-not-working