Insertion en bloc Postgres

Insertion En Bloc Postgres



Une insertion en bloc est un processus qui ajoute plusieurs lignes de données à une table en une seule opération. Cela peut être beaucoup plus rapide que d'insérer une ligne à la fois, en particulier lorsqu'il s'agit de grandes quantités de données.

La méthode la plus courante pour effectuer une insertion en bloc dans PostgreSQL est la commande COPY qui peut prendre les données d'un fichier ou d'une entrée standard et les insérer dans une table. La commande COPY nécessite que les données soient dans un format spécifique, généralement un fichier CSV ou texte.

Voyons comment utiliser cette commande pour effectuer une insertion en masse dans PostgreSQL.







Insertion en masse PostgreSQL

Explorons les étapes pour effectuer une insertion en masse dans PostgreSQL.



Préparez vos données

Avant d'effectuer une insertion en bloc, assurez-vous que les données cible sont au format approprié. Nous vous recommandons de configurer vos données en CSV ou TSV. Vous pouvez structurer les données cibles en lignes et en colonnes séparées par des virgules ou des tabulations.



Connectez-vous à PostgreSQL

Ensuite, connectez-vous à votre base de données PostgreSQL en utilisant le client souhaité. Pour ce tutoriel, nous utilisons l'utilitaire PSQL pour une utilisation facile et un accès universel.





$ psql -DANS postgres -d < nom de la base de données >

Par exemple, vous pouvez exécuter la requête suivante pour utiliser la base de données user_information :

$ psql -DANS postgres -d informations de l'utilisateur

Si vous ne disposez pas de la base de données cible, vous pouvez la créer à l'aide de la commande CREATE DATABASE :



CRÉER UNE BASE DE DONNÉES < nom_bd >

Créer un tableau

Ensuite, nous devons nous assurer que la table dans laquelle nous souhaitons insérer les données existe. La structure de la table doit correspondre à la structure des données, y compris les types de données pris en charge.

Si la table n'existe pas, vous pouvez utiliser la commande CREATE TABLE :

CREATE TABLE network_users (
identifiant CLÉ PRIMAIRE DE SÉRIE,
nom d'utilisateur VARCHAR ( 255 ) NON NUL,
adresse_ip INET,
mac_address MACADDR,
mimer TEXTE
) ;

La commande donnée doit créer une table appelée 'network_users' avec les colonnes id, username, ip_address, mac_address et mime.

Une fois la table prête, nous pouvons charger les données dans la table PostgreSQL. Encore une fois, il est bon de s'assurer que le fichier de données est accessible depuis la machine sur laquelle tourne le serveur.

Exécuter l'insertion en bloc

Ensuite, nous pouvons utiliser la commande COPY pour charger les données du fichier dans la table de la base de données. La syntaxe de la commande est la suivante :

COPIER nom_table ( colonne1, colonne2, colonne3 )
DEPUIS 'chemin/vers/fichier_données'
AVEC ( FORMAT CSV | texte, DELIMITER 'délimiteur' , ENTÊTE ) ;

Vous pouvez spécifier le format (CSV ou texte), le délimiteur utilisé dans votre fichier (par exemple, ',' pour CSV, '\t' pour TSV) et si votre fichier inclut une ligne d'en-tête.

Par exemple, pour copier les données dans la table « network_users », nous pouvons exécuter la commande comme suit :

copier network_users ( identifiant , nom d'utilisateur, adresse_ip, adresse_mac, mime ) depuis 'utilisateurs_réseau.
csv'
avec ( format csv, délimiteur ',' , entête ) ;

Cela permet à PostgreSQL de charger les données du fichier dans la table. Vous pouvez vérifier si l'insertion a réussi en interrogeant les données de la table.

Insertion en bloc PostgreSQL PgAdmin

Nous pouvons également utiliser une interface graphique fournie par pgAdmin pour importer un fichier de données.

Commencez par lancer pgAdmin et connectez-vous à votre base de données PostgreSQL en fournissant les détails de connexion nécessaires.

Ensuite, localisez la table dans laquelle vous souhaitez effectuer une insertion en masse. Vous pouvez trouver vos bases de données et vos tables dans le panneau du navigateur.

Faites un clic droit sur le tableau et sélectionnez 'Importer/Exporter'.

Dans l'assistant « Importer/Exporter », choisissez l'option « Importer » et sélectionnez le type de source de données. Par exemple, vous pouvez importer une requête ou le presse-papiers à partir d'un fichier.

À l'étape suivante, fournissez les détails du fichier pour l'insertion en bloc. Sélectionnez le format de fichier (CSV, TSV, pour spécifier le chemin d'accès à votre fichier de données et définissez le délimiteur utilisé dans le fichier.

Une fois satisfait de vos options d'importation de fichiers, cliquez sur 'Ok' pour démarrer le processus d'importation. Vous devriez voir l'état du processus dans le volet inférieur droit.

Vous pouvez vérifier si l'importation a réussi en ouvrant l'éditeur de requêtes et en exécutant la requête :

SÉLECTIONNER * FROM utilisateurs_réseau ;

Sortir :

Conclusion

Nous avons exploré comment utiliser PSQL et pgAdmin pour effectuer une insertion en bloc à partir d'un fichier de données externe dans une table de base de données PostgreSQL.