MUIbase Support This Project
programmable relational database
with graphical user interface
This page is also available in deutsch english

Documentation

La documentation ci-dessous fait partie de la distribution de MUIbase. Elle est également disponible sous forme de PDF.


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

13. Importer et Exporter

Pour partager vos enregistrements avec d'autres systèmes de base de données, MUIbase offre un moyen d'importer et d'exporter les enregistrements depuis et vers d'autres bases de données. L'import et l'export sont réalisés par lecture et écriture de fichiers textes ASCII. De plus, les données que vous souhaitez importer doivent être dans un format particulier décrit dans la section suivante.


13.1 Format de fichier

Pour importer des enregistrements dans MUIbase, tous les enregistrements de la table doivent être disponibles dans un seul fichier texte. Si vous désirez importer des enregistrements de plusieurs tables, vous devez avoir plusieurs fichiers d'import (un par table).

Un fichier d'import est constitué de lignes et de colonnes. Les lignes sont séparées par un séparateur d'enregistrement, les colonnes par un séparateur de champs. Les délimiteurs peuvent être spécifiés dans les fenêtres d'import et d'export. Comme les champs des enregistrements eux-mêmes peuvent déjà contenir ces séparateurs, il est possible d'utiliser des guillemets autour des champs pour les protéger.

Un fichier d'import doit posséder la structure suivante.

  • La première ligne contient le nom des champs, et pour chacun, un champ avec exactement le même nom doit exister dans la table dans laquelle sont importés les enregistrements. S'il existe un nom pour lequel il n'y a pas de champ correspond dans la table, alors un message d'erreur est généré.
  • Les lignes suivantes contiennent chacune un enregistrement. Comme tous les champs doivent être spécifiés au format texte, ils sont automatiquement convertis dans le type du champ de destination. Pour les champs de type booléen, le champ doit être soit NIL, soit TRUE (VRAI) (peu importe la casse), autrement un message d'erreur est généré. Pour les champs de type choix, le libellé (label) exact doit être spécifié (la casse est importante ici). Pour les champs de type référence, il faut indiquer le numéro de l'enregistrement référencé (à partir de 1). Pour tous les autres types, la valeur NIL est utilisée si le champ ne peut être converti vers le type requis.
  • Lors de l'utilisation des guillemets, tous les champs des enregistrements, ainsi que ceux de la ligne contenant le nom des champs, doivent être protégés par des guillemets.


13.2 Exemple de fichier d'import

L'exemple suivant importe un fichier en utilisant \n et \t respectivement comme délimiteur d'enregistrement et délimiteur de champ, et des guillemets autour de tous les champs. Le fichier peut être importé dans une table ayant les champs suivants :

  • Nom (texte)
  • NbEnfants (entier)
  • Femme (booléen)
  • Travail (choix)
  • Notes (mémo)

 

"Nom"	"NbEnfants"	"Femme"	"Travail"	"Notes"
"Janet Jackson"	"???"	"TRUE"	"Musicienne"	"Dernier CD: The velvet rope"
"Bernt Schiele"	"???"	"NIL"	"Scientifique"	"Centres de recherches :
Robotique, Autonomie et Vision par ordinateur"
"Gerhard"	"0"	"NIL"	"Mécanique de précision"	""


13.3 Importer des enregistrements

Pour importer des enregistrements dans la table active, sélectionnez le menu `Table - Importer des enregistrements...'. Cela ouvre une fenêtre contenant les éléments suivants :

  • un champ texte pour saisir le nom du fichier d'import. À droite de ce champ il y a trois boutons : le premier permet d'ouvrir une requête de sélection de fichier, le second lance la visionneuse externe pour inspecter le fichier saisi, et le troisième lance un éditeur pour éditer le contenu du fichier.
  • deux champs texte pour saisir respectivement les délimiteurs d'enregistrement et de champ. Vous pouvez saisir un caractère ou un code de contrôle tel que \n, \t, \f, \??? (code octal) ou \x?? (code hexa). Les délimiteurs doivent être des caractères ASCII 7 bits.
  • une case `Guillemets' qui peut être cochée pour indiquer que les champs sont protégés par des guillemets.
  • deux boutons `Importer' et `Annuler' pour fermer la fenêtre.

Si vous appuyez sur le bouton `Importer', MUIbase va charger le fichier spécifié et importer tous les enregistrements qu'il va trouver. Si tout se passe correctement après le processus d'import, MUIbase demande si vous voulez vraiment ajouter les enregistrements importés dans la table. À ce point il est encore possible d'annuler l'opération.

Si une erreur survient lors de la lecture du fichier d'import, un message d'erreur est affiché.

Si vous avez besoin d'un mécanisme d'import plus sophistiqué, il est recommandé d'écrire sa propre routine d'import dans un programme MUIbase.


13.4 Exporter des enregistrements

Pour exporter les enregistrements de la table active, sélectionnez le menu `Table - Exporter des enregistrements...'. Cela ouvre une fenêtre contenant les éléments suivants :

  • un champ texte pour saisir le nom du fichier d'export avec à droite un bouton pour ouvrir une requête de sélection de fichier.
  • deux champs texte pour saisir respectivement les délimiteurs d'enregistrement et de champ. Vous pouvez saisir un caractère ou un code de contrôle tel que \n, \t, \f, \??? (code octal) ou \x?? (code hexa). Les délimiteurs doivent être des caractères ASCII 7bit.
  • une case `Guillemets' qui peut être cochée pour indiquer que les champs doivent être protégés par des guillemets.
  • deux boutons `Exporter' et `Annuler' pour fermer la fenêtre.

Si vous appuyez sur le bouton `Importer', MUIbase va ouvrir le fichier spécifié et y écrire les enregistrements en y incluant une ligne d'entête contenant le nom des champs. La fonction d'export écrit toujours tous les champs de la table dans le fichier d'export.

Pour un mécanisme d'export personnalisé, vous pouvez utiliser l'éditeur de requête de MUIbase (voir Data retrieval) ou écrire votre propre routine d'export dans un programme MUIbase.


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

Ce document a été généré le 11 Septembre 2016 par texi2html