>데이터 베이스 >MySQL 튜토리얼 >내 Python 코드가 MySQL에 CSV 데이터를 삽입하지 않는 이유는 무엇입니까?

내 Python 코드가 MySQL에 CSV 데이터를 삽입하지 않는 이유는 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-27 05:03:141008검색

Why Doesn't My Python Code Insert CSV Data into MySQL?

Python에서 MySQL에 CSV 데이터 로드

Python을 사용하여 MySQL 테이블에 CSV 데이터를 로드하려고 하면 사용자는 다음과 같은 시나리오에 직면할 수 있습니다. 코드는 오류 없이 실행되지만 테이블에 데이터를 삽입하지 못합니다. 이 문제를 해결하려면 이 프로세스에서 mydb.commit()의 역할을 이해하는 것이 중요합니다.

시작하려면 mydb.connect() 함수가 데이터베이스에 대한 연결을 설정합니다. 커서가 생성되면 INSERT INTO 문을 사용하여 CSV 데이터를 읽고 테이블에 삽입합니다. 그러나 데이터베이스에 변경 사항을 저장하려면 삽입 후 mydb.commit()을 수행하는 것이 필수적입니다. 이 단계가 없으면 데이터는 커밋되지 않은 상태로 유지되며 테이블에 표시되지 않습니다.

다음은 mydb.commit()이 추가된 수정된 코드입니다.

import csv
import MySQLdb

mydb = MySQLdb.connect(host='localhost',
    user='root',
    passwd='',
    db='mydb')
cursor = mydb.cursor()

csv_data = csv.reader(file('students.csv'))
for row in csv_data:

    cursor.execute('INSERT INTO testcsv(names, \
          classes, mark )' \
          'VALUES("%s", "%s", "%s")', 
          row)
mydb.commit() # Save changes to database
#close the connection to the database.
cursor.close()
print "Done"

포함하여 mydb.commit()을 사용하면 데이터가 MySQL 테이블에 성공적으로 삽입되었는지 확인할 수 있습니다.

위 내용은 내 Python 코드가 MySQL에 CSV 데이터를 삽입하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.