Maison > développement back-end > Tutoriel Python > Comment importer un fichier CSV dans une table de base de données SQLite3 avec Python ?

Comment importer un fichier CSV dans une table de base de données SQLite3 avec Python ?

Barbara Streisand
Libérer: 2024-11-28 04:34:09
original
952 Les gens l'ont consulté

How to Import a CSV File into an SQLite3 Database Table with Python?

Conversion d'un fichier CSV en table de base de données SQLite3 avec Python

L'importation d'un fichier CSV directement dans une table de base de données SQLite3 n'est pas possible à l'aide de la commande ".import". Cependant, cela peut être réalisé en suivant les étapes suivantes :

Établir une connexion à la base de données

Utilisez le module sqlite3 pour établir une connexion à une base de données (soit une base de données en mémoire, soit une base de données basée sur un fichier). base de données):

import sqlite3

con = sqlite3.connect(":memory:")
cur = con.cursor()
Copier après la connexion

Créer la table cible

Créez la table qui contiendra les données importées à l'aide de la Instruction "CREATE TABLE", spécifiant les noms de colonnes et les types de données :

cur.execute("CREATE TABLE t (col1, col2);")
Copier après la connexion

Lire le fichier CSV

Ouvrez le fichier CSV et lisez son contenu à l'aide d'un lecteur CSV. Si les noms de colonnes sont spécifiés dans la première ligne du fichier, vous pouvez utiliser csv.DictReader pour les mapper à un dictionnaire :

with open('data.csv', 'r') as fin:
    dr = csv.DictReader(fin)
Copier après la connexion

Convertir les données CSV en listes

Convertir le dictionnaire lignes du lecteur CSV dans une liste de tuples :

to_db = [(i['col1'], i['col2']) for i in dr]
Copier après la connexion

Insérer les données dans le Table

Utilisez la méthodeexecutemany() sur l'objet curseur pour insérer la liste des tuples dans la table cible :

cur.executemany("INSERT INTO t (col1, col2) VALUES (?, ?);", to_db)
Copier après la connexion

Commit Changes

Commit les modifications dans le base de données pour les rendre persistantes :

con.commit()
Copier après la connexion

Fermez la connexion

Enfin, fermez la base de données connexion :

con.close()
Copier après la connexion

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