Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Administration
Administration Forum d'entraide sur les outils d'administration natifs pour Firebird: gbak, gfix, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/11/2004, 12h04   #1
Candidat au titre de Membre du Club
 
Inscription : août 2003
Messages : 34
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 34
Points : 12
Points : 12
Par défaut Récupération de données

Salut,

Je voudrais récupérer le contenu de ma base dans un ou plusieurs fichiers.
Pour l'instant, j'ai réussi à récupérer toute la structure (Domaines, Tables, Clés primaires et étrangères, index, fonctions UDF, ...) via la ligne suivante :
Citation:
isql -user MonUser -password MonPwd -a MaBase -o MonOutFile
J'aurais voulu savoir comment faire et, si possible, par ligne de commande, pour récupérer les données de toutes mes tables.

Merci à tous.
Tito est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/12/2004, 02h11   #2
Membre du Club
 
Inscription : juillet 2004
Messages : 200
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 200
Points : 67
Points : 67
En utilisant

isql <login> -i requete.sql -o resultat.txt

où requête.sql sera un fichier contenant une requete du type

select * from table;

vous pouvez obtenir dans resultat.txt le contenu de la table.

Il faut donc répéter la requete pour chaque table. Malheureusement les entete de colonnes son répétés toutes les 20 lignes.

Autre piste le datapump du BDE Borland. Même déprécié, il marche !
frantzgac est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/12/2004, 09h14   #3
Candidat au titre de Membre du Club
 
Inscription : août 2003
Messages : 34
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 34
Points : 12
Points : 12
J'ai essayé plusieurs lignes de commande
Citation:
isql -user User -password PassWord -a Base -i fic.sql -o c:\res.txt

isql -user User -password PassWord -i fic.sql -o c:\res.txt
(En étant connecté avant)
Rien n'y fait, j'ai toujours un fichier res.txt vide.
Comment cela ce fait-il ? Aurais-je oublier une étape ?
Tito est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/12/2004, 10h03   #4
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Si vous voulez le faire de mannière occasionnelle vous pouver très bien utiliser IBConsole. Ou plus simplement IBExpert (free ou commerciale).

Par exemple avec IBConsole :
Connectez vous sur votre base
Deux possibilitées
1-Vous souhaitez avoir vos enregistrements sous la forme d'un script avec des INSERT :
Ouvrez une table, onglet metadata et en bas cochez Extract table data.
Vous verrez apparaitre dans le memo des métadata après les déclarations de création de la table les INSERT correspondant à vos données. Un copier coller dans un fichier txt et le tour est joué.

2-Vous souhaitez avoir juste les données :
Ouvrez ISQL de IBConsole, tappez
select * from ma table
executez
puis menu query
save output.

Voilà.
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/12/2004, 01h38   #5
Membre du Club
 
Inscription : juillet 2004
Messages : 200
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 200
Points : 67
Points : 67
Par défaut isql

avec isql le mieux est de tout mettre dans le fichier de script. Ainsi on s'affranchit d'éventuelles fautes de frappe. Donc dans le fichier requete on écrit :

CONNECT 'c:\repertoire\mabase.gdb' USER 'monuser' PASSWORD 'macle';

select * from matable;

puis on execute

isql -i requete -o resultat

si ca ne marche pas c'est

1 : parce que le chemin et/ou le nom de la base sont incorrects
2 : le user idem
3 : le mot de passe idem
4 : le nom de la table idem
frantzgac est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2004, 08h55   #6
Candidat au titre de Membre du Club
 
Inscription : août 2003
Messages : 34
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 34
Points : 12
Points : 12
Avec le CONNECT, ça marche tout de suite beaucoup mieux.

Merci.
Tito est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h49.


 
 
 
 
Partenaires

Hébergement Web