IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PostgreSQL Discussion :

Copie de données d'une table sur une autre


Sujet :

PostgreSQL

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2023
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2023
    Messages : 14
    Points : 8
    Points
    8
    Par défaut Copie de données d'une table sur une autre
    Bonjour,

    je cherche à copier les données d'une de mes tables sur une autre, mais je rencontre le message d'erreurs suivant :

    ERROR: la colonne « quant_inc » est de type real mais l'expression est de type character varying
    LINE 2: SELECT *
    ^
    HINT: Vous devez réécrire l'expression ou lui appliquer une transformation de type.

    ERREUR: la colonne « quant_inc » est de type real mais l'expression est de type character varying
    SQL state: 42804
    Character: 38
    Pourtant mes deux tables ont les mêmes champs et avec types identiques.
    voici la requête utilisée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    INSERT INTO base_eau.incident
    SELECT *
    FROM base_eau_test.incident_sur_troncon_final
    Quelqu'un aurait une idée de comment résoudre ce message d'erreur ?

    MERCI de votre assistance.
    Très cordialement.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 271
    Points : 12 951
    Points
    12 951
    Par défaut
    Bonjour,
    Pour faire simple: OUBLIES LE SELECT * !
    Ici on ne sait pas trop quelle colonne de la table source est affectée à la table cible.
    Or si tu spécifies les colonnes tant dans la clause INSERT que dans la clause SELECT, plus d'ambiguïté, on sait précisément quelle valeur va dans quelle colonne.

    Tatayo.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2023
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2023
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    merci pour votre réponse.

    en faisant cela, tout a bien fonctionner :

    code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    INSERT INTO base_eau.incident (
        gid, fonction, type_inc, detection, support, quant_inc , quant_unit, quant_obs, annee , livraison, observat, source , geom , insee, reparation, date_int_sig
    )
    SELECT 
         gid, fonction, type_inc, detection, support, quant_inc , quant_unit, quant_obs, annee , livraison, observat, source , geom , insee, reparation, date_int_sig
     
    FROM base_eau_test.incident_sur_troncon_final
    Merci et très bon après midi

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Copie de colonnes dans une autre table
    Par Gaetgaet78 dans le forum Requêtes
    Réponses: 2
    Dernier message: 07/01/2011, 09h03
  2. Copie de donnés d'une base DB2 vers MYSQL
    Par the watcher dans le forum JDBC
    Réponses: 6
    Dernier message: 20/09/2010, 17h56
  3. Réponses: 2
    Dernier message: 09/08/2010, 18h30
  4. Réponses: 4
    Dernier message: 28/05/2010, 17h11
  5. Réponses: 6
    Dernier message: 12/02/2008, 14h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo