Python에서 MySQL로 CSV 데이터 로드 문제 해결
CSV 데이터를 MySQL 테이블로 로드하려고 할 때 다음과 같은 상황이 발생할 수 있습니다. 코드는 오류 없이 실행되지만 대상 테이블은 비어 있습니다. 이 문제를 해결하려면 다음을 고려하십시오.
문제:
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) #close the connection to the database. cursor.close() print "Done"
해결책:
데이터가 테이블에 성공적으로 삽입되면 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) # Commit the data to the database. mydb.commit() #close the connection to the database. cursor.close() print "Done"
위 내용은 오류 없이 Python MySQL CSV 데이터 로드가 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!