Comment importer un fichier CSV dans une table de base de données SQLite à l'aide de Python ?

Barbara Streisand
Libérer: 2024-11-16 12:04:02
original
954 Les gens l'ont consulté

How to Import a CSV File into a SQLite Database Table Using Python?

Importation groupée de données CSV dans SQLite avec Python

L'importation d'un fichier CSV dans une table de base de données SQLite peut être un processus simple à l'aide du module sqlite3 de Python . Cependant, l'utilisation directe de la commande ".import" peut ne pas donner les résultats souhaités, comme suggéré dans une requête récente.

Pour importer efficacement un fichier CSV, envisagez l'approche suivante :

Exemple :

En supposant que vous disposez d'un fichier CSV nommé "data.csv" situé dans votre répertoire de travail actuel et d'une connexion à la base de données établie à l'aide de sqlite3.connect(), vous pouvez effectuer l'importation en suivant les étapes suivantes :

import csv, sqlite3

# Connect to the database
con = sqlite3.connect(":memory:") # or 'sqlite:///your_filename.db'

# Create a cursor
cur = con.cursor()

# Create the target table in advance
cur.execute("CREATE TABLE t (col1, col2);") # Adjust column names as needed

# Open the CSV file for reading
with open('data.csv','r') as fin:

    # Create a DictReader to read the header and rows as dictionaries
    # In case of a headerless file, skip the header argument
    dr = csv.DictReader(fin, delimiter=',')

    # Convert the rows into a list of tuples
    to_db = [(i['col1'], i['col2']) for i in dr]

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

# Commit the changes
con.commit()

# Close the connection
con.close()
Copier après la connexion

Ce script suppose que votre fichier CSV comporte deux colonnes nommées "col1" et "col2". Si votre fichier a des noms de colonnes différents, ajustez-les en conséquence dans le code. Une fois l'exécution réussie, les données CSV seront importées dans la table "t" nouvellement créée dans la base de données spécifiée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal