Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
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 21/08/2006, 16h36   #1
Membre régulier
 
Homme Loïc JUSTIN
Administrateur de base de données
Inscription : novembre 2004
Messages : 234
Détails du profil
Informations personnelles :
Nom : Homme Loïc JUSTIN
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2004
Messages : 234
Points : 91
Points : 91
Par défaut Probleme concatenation avec postgresql

Bonjour,
J’essaie de créer un fichier plat sous postgresql pour pouvoir ensuite insérer les données dans une base oracle 10Gr2.
Ma requête est de la forme
Citation:
select colonne1||';'||colonne2||';'||....||';'||colonne29
from ma_table;
Le résultat est inutilisable car il me renvoie un nombre important de ligne vide
Qu'est ce qui peut provoquer ce problème?
j'ai bien sure avant d'avoir lancé ma requête redirigé mon fichier avec la commande
Citation:
\o nom_de_fichier_de_sortie
JUSTIN Loïc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2006, 18h00   #2
Membre chevronné
 
Avatar de gerald2545
 
Inscription : février 2003
Messages : 643
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 643
Points : 660
Points : 660
je ne sais pas, c'est bizarre,
mais ce que tu peux faire, c'est passer par phpPgAdmin, qui te propose un export en divers formats (SQl, COPY,CSV, tabulé...).
gerald2545 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2006, 19h44   #3
Membre régulier
 
Homme Loïc JUSTIN
Administrateur de base de données
Inscription : novembre 2004
Messages : 234
Détails du profil
Informations personnelles :
Nom : Homme Loïc JUSTIN
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2004
Messages : 234
Points : 91
Points : 91
Bonsoir,
Merci pour l'information.
Malheureusement, je ne peux utiliser PhpPgAdmin car je n'arrive par à le faire fonctionner.
Par contre j'ai trouvé une solution pour générer mon script avec les commande insert into qui vont bien.
Pour cela j'utilise les commandes suivantes
Citation:
pg_dump -s -n -D -x nom_de_ma_base > c:/temp/nom_de_base.sql
Ceci me génére les scripts de creation d'objets. A modifier pour rendre les formats des colonnes compatibles avec une base oracle et la commande suivante
pg_dump -a -n -D -x nom_de_ma_base > c:/temp/donnees_base.sql
qui me creer toutes les commandes INSERT INTO
JUSTIN Loïc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 12h31   #4
Membre régulier
 
Homme Loïc JUSTIN
Administrateur de base de données
Inscription : novembre 2004
Messages : 234
Détails du profil
Informations personnelles :
Nom : Homme Loïc JUSTIN
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2004
Messages : 234
Points : 91
Points : 91
Bonjour,
Il me reste un problème avec la création de mon script INSERT INTO.
Dans la liste de mes colonnes, j'en ai certaines qui sont mises avec des doubles quotes pourquoi ?
exemple:
Citation:
INSERT INTO cartouches (id_jeu,id_rob,name, "type", codebar, volume, nb_files,status,date_creat,date_recyl ....,"location",existe) VALUES (.....)
D'avance merci
JUSTIN Loïc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 13h23   #5
Membre chevronné
 
Avatar de gerald2545
 
Inscription : février 2003
Messages : 643
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 643
Points : 660
Points : 660
ce ne serait pas des mots réservés par postgresql?
gerald2545 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 14h09   #6
Membre régulier
 
Homme Loïc JUSTIN
Administrateur de base de données
Inscription : novembre 2004
Messages : 234
Détails du profil
Informations personnelles :
Nom : Homme Loïc JUSTIN
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2004
Messages : 234
Points : 91
Points : 91
Bonjour

C'est éffectivement ce que j'ai vu à l'adresse suivante
http://www.postgresql.org/docs/8.0/s...KEYWORDS-TABLE
Sinon, auraitil un moyen d'y remedier car mon fichier d'export fait 700Mo, je ne peux donc pas le prendre avec un editeur pour le modifier.
Cordialement
JUSTIN Loïc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 14h18   #7
Membre chevronné
 
Avatar de gerald2545
 
Inscription : février 2003
Messages : 643
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 643
Points : 660
Points : 660
tu es sous linux?
gerald2545 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 14h29   #8
Membre régulier
 
Homme Loïc JUSTIN
Administrateur de base de données
Inscription : novembre 2004
Messages : 234
Détails du profil
Informations personnelles :
Nom : Homme Loïc JUSTIN
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2004
Messages : 234
Points : 91
Points : 91
Non,
je suis sous Windows et la taille maximum autorisée pour un fichier texte est de 32Mo.
Ma base postgresql est une version 8.1 egalement sous windows.
Les données de ma base viennent d'un import d'une base 7.3.4,fonctionnant elle sous linux.
Tout ça dans le but de migrer ma base de postgresql 8.1 sous Windows vers une base Oracle 10Gr2 sous windows.
Car je suis MOE et MOA de cette application et je fais mes tests avec les moyens que je dispose.
JUSTIN Loïc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 14h37   #9
Membre chevronné
 
Avatar de gerald2545
 
Inscription : février 2003
Messages : 643
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 643
Points : 660
Points : 660
tu as quand même accès à un PC/Serveur sous linux ou pas?
si oui :
en bash :
Citation:
#!/bin/bash
#ouvre chaque fichier ayant l'extension .sql contenu dans le répertoire courant
for i in `ls ./*sql`
do
#remplace "type" par type et enregistre dans un nouveau fichier
sed s/"type"/type/g $i > $i.sed
#renomme le fichier original pour ne pas le perdre
mv $i $i.ori
#renomme le fichier modifié par le nom du fichier original
mv $i.sed $i
done
c'est une base qui doit être fonctionnelle....
gerald2545 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 14h46   #10
Membre régulier
 
Homme Loïc JUSTIN
Administrateur de base de données
Inscription : novembre 2004
Messages : 234
Détails du profil
Informations personnelles :
Nom : Homme Loïc JUSTIN
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2004
Messages : 234
Points : 91
Points : 91
Effectivement j'ai accès à un serveur linux.
Mais j'évite de le faire pour ne pas ralentir la production.
Mais ta solution me va à merveille
JUSTIN Loïc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 15h49   #11
Membre régulier
 
Homme Loïc JUSTIN
Administrateur de base de données
Inscription : novembre 2004
Messages : 234
Détails du profil
Informations personnelles :
Nom : Homme Loïc JUSTIN
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2004
Messages : 234
Points : 91
Points : 91
En cherchant un peu .
J'ai trouvé que j'avais une emulation UNIX grace à un shell bash.exe.
Apres cela j'ai vérifié que j'avais bien les commandes sed et mv comme c'etait ok. J'ai pu lancer la modification de mon fichier sous windows.
Par contre une erreur dans la commande sed ma fait chercher un peu
tu marques
Citation:
sed s/"type"/type/g $i > $i.sed
La commande s'execute mais il ne fait rien
alors que la commande est
Citation:
sed 's/"type"/type/g' $i > $i.sed
Encore merci
JUSTIN Loïc 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 07h44.


 
 
 
 
Partenaires

Hébergement Web