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

Oracle Discussion :

problème d'insert


Sujet :

Oracle

  1. #1
    Membre averti
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut problème d'insert
    j'ai voudrais creer une procédure qui insert d'une table d'une instance vers une table identique mais dont l'order des champs est différent .
    ceci en changeant la valeurs d'une seul champs celui-ci devant etre unique .
    j'ai essayer en passant par une variable de type %rowtype
    mais j'ai des problèmes lors de l'insert car l'ordre des champs est different

    merci d'avance
    :

  2. #2
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    INSERT INTO MATABLE_1 ( COL1, COL2, COL3)
    SELECT COL2, COL1, COL3 FROM MATABLE_2;

  3. #3
    Membre averti
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut
    merci du renseignement , mais j'aurais voulus ne pas devoir nommer champs par champs pour que l'on ne doivent pas modifier la procédure
    lorsque l'on modifie les table .

  4. #4
    Membre Expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Par défaut
    C'est très risqué comme méthode, il suffit que tu ne crées pas les colonnes dans le même ordre entre 2 tables pour que cette solution ne fonctionne plus.

  5. #5
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par Plumet
    merci du renseignement , mais j'aurais voulus ne pas devoir nommer champs par champs pour que l'on ne doivent pas modifier la procédure
    lorsque l'on modifie les table .
    Et ben dans ce cas 2 choix :
    Soit tes tables sont ABSOLUMENT identiques
    Soit tu le fait en dynamique.

  6. #6
    Membre averti
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut
    Qu'entends-tu par dynamique ?
    je voudrais déclencher la procédure dans un trigger .
    je ne peut garantir l'ordre des champs les tables étant dans des applications différentes .
    je dois modifier la valeur d'un champs au passage.
    j'aimerais ne pas devoir modifier cette procédure a chaque fois que l'on modifie la tables source .

  7. #7
    Membre Expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Par défaut
    Citation Envoyé par Plumet
    Qu'entends-tu par dynamique ?
    En utilisant execute immediate. Pour plus d'informations :
    http://sheikyerbouti.developpez.com/execute_immediate/

  8. #8
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Voila, merci PlainR.
    En utilisant un curseur sur la vue système all_tab_columns, tu as toutes tes colonnes de ta table.

  9. #9
    Membre averti
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut
    je vous remercie pour l'aide apportée


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

Discussions similaires

  1. problème d'insertion de données
    Par Falgan dans le forum ASP
    Réponses: 2
    Dernier message: 06/04/2004, 09h29
  2. Probléme d'insertion par défault
    Par xavier62 dans le forum SQL
    Réponses: 7
    Dernier message: 28/11/2003, 13h03
  3. [Interbase 7] Problème d'insertion de données
    Par Tuscelan dans le forum InterBase
    Réponses: 12
    Dernier message: 19/11/2003, 22h58
  4. STL : std::set problème avec insert ...
    Par Big K. dans le forum MFC
    Réponses: 13
    Dernier message: 08/11/2003, 01h02
  5. Problème d'insertion avec MySQL
    Par Sonny dans le forum ASP
    Réponses: 13
    Dernier message: 28/08/2003, 13h52

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