>  기사  >  백엔드 개발  >  Python을 사용하여 CSV 파일을 SQLite 데이터베이스로 어떻게 가져올 수 있나요?

Python을 사용하여 CSV 파일을 SQLite 데이터베이스로 어떻게 가져올 수 있나요?

Patricia Arquette
Patricia Arquette원래의
2024-11-09 08:09:02985검색

How can I import CSV files into SQLite databases using Python?

Python을 사용하여 SQLite 데이터베이스로 CSV 파일 가져오기

Python에서 sqlite3 모듈을 활용하면 개발자가 쉽게 가져올 수 있습니다. CSV 파일의 데이터를 sqlite3 데이터베이스 테이블로 변환합니다. ".import" 명령을 직접 적용할 수는 없지만 대체 방법은 이 작업을 수행하기 위한 간단한 접근 방식을 제공합니다.

예제 코드:

가져오기 프로세스를 설명하려면 , 다음 Python 코드를 고려하세요.

import csv, sqlite3

# Connect to the database (in-memory or file) and create a cursor
con = sqlite3.connect(":memory:") # change to 'sqlite:///your_filename.db'
cur = con.cursor()
cur.execute("CREATE TABLE t (col1, col2);") # use your column names here

# Open the CSV file for reading
with open('data.csv','r') as fin:
    # Create a DictReader object to read data from the CSV file
    dr = csv.DictReader(fin) # comma is default delimiter
    # Convert CSV data into a list of tuples for database insertion
    to_db = [(i['col1'], i['col2']) for i in dr]

# Execute the insert query using executemany to efficiently import data
cur.executemany("INSERT INTO t (col1, col2) VALUES (?, ?);", to_db)

# Commit changes to the database
con.commit()

# Close the connection and cursor
con.close()

설명:

  • sqlite3.connect()를 사용하여 SQLite 데이터베이스에 연결하고 실행을 위한 커서를 만듭니다.
  • CREATE TABLE 문을 사용하여 데이터베이스에 대상 테이블을 생성합니다.
  • with 문을 사용하여 읽을 CSV 파일을 엽니다.
  • csv.DictReader를 사용하여 읽습니다. CSV 파일의 데이터입니다. 열 이름을 해당 값에 자동으로 매핑합니다.
  • 데이터베이스에 효율적으로 삽입할 수 있도록 데이터를 튜플 목록으로 변환합니다.
  • executemany를 활용하여 여러 행을 동시에 가져옵니다.
  • 데이터베이스에 데이터가 지속되도록 변경 사항을 커밋합니다.
  • 리소스를 해제하려면 연결과 커서를 닫습니다.

위 내용은 Python을 사용하여 CSV 파일을 SQLite 데이터베이스로 어떻게 가져올 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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