PostgreSQL Python: Gestion des données BLOB

Résumé: dans ce tutoriel, vous apprendrez à gérer les données BLOB PostgreSQL en Python.

SQL Standard définit BLOB comme l’objet binaire volumineux permettant de stocker des données binaires dans la base de données. Avec le type de données BLOB, vous pouvez stocker le contenu d’une image, d’un document, etc. dans la table.

PostgreSQL ne prend pas en charge BLOB mais vous pouvez utiliser le type de données BYTEA pour stocker les données binaires.

Jetons un coup d’œil au tableau part_drawings.

Le tableau part_drawings stocke les images des pièces dans la colonne drawing_data. Nous allons vous montrer comment insérer des données binaires dans cette colonne et les relire.

Insérer un BLOB dans une table

Pour insérer des données BLOB dans une table, procédez comme suit:

  1. Tout d’abord, lisez les données d’un fichier.
  2. Ensuite, connectez-vous à la base de données PostgreSQL en créant un nouvel objet de connexion à partir de la fonction connect().
  3. Ensuite, créez un objet cursor à partir de l’objet connection.
  4. Après cela, exécutez l’instruction INSERT avec les valeurs d’entrée. Pour les données BLOB, vous utilisez l’objet Binary du module psycopg
  5. Enfin, validez définitivement les modifications dans la base de données PostgreSQL en appelant la méthode commit() de l’objet connection.

La fonction write_blob() suivante lit les données binaires d’un fichier spécifié par le paramètre path_to_file et les insère dans la table part_drawings.

L’extrait suivant appelle la fonction write_blob () deux fois pour insérer deux nouvelles parties avec les données binaires correspondantes des fichiers d’image dans la table part_drawings.

Code language: Python (python)

Lire le BLOB dans la table

Les étapes de lecture du BLOB d’une table sont similaires aux étapes d’interrogation des données d’une table. Après avoir récupéré les données binaires de la table, nous pouvons les enregistrer dans un fichier, les afficher dans le navigateur Web, etc.

La fonction read_blob() suivante sélectionne les données BLOB de la table part_drawings en fonction d’un id de pièce spécifié et enregistre les données BLOB dans un fichier.

L’extrait de code suivant lit les données binaires des parties avec la valeur d’id 1 et 2, et enregistre les données binaires dans le dossier images/blob.

Dans ce tutoriel, vous avez appris à gérer les données BLOB PostgreSQL en Python à l’aide de l’adaptateur de base de données psycopg.

  • Ce tutoriel a-t-il été utile?
  • Ouinon

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.