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

PL/SQL Oracle Discussion :

Insert et select en PL/SQL


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 31
    Par défaut Insert et select en PL/SQL
    Bonjour,

    Je suis en train de faire un script en PL/SQL permettant d'alimenter une base de données.

    Le problème est le suivant : j'ai deux tables que j'alimente grâce au script. Je dois par la suite alimenter une troisième table avec les données des deux tables alimentées auparavant.

    Si vous avez bien compris le système, je dois faire un select sur les deux tables, et entrer le résultat dans la troisième table et insérant seulement les ID des deux tables.

    En fait je voudrai savoir comment récupérer les valeurs (select) et les mettre dans une autre table (insert).

    Je ne sais pas si je me suis bien exprimé, mais si quelqu'un pourrait m'éclairer sur ce problème, ça serait très sympa, merci !!!


  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    INSERT INTO tab3
    SELECT id FROM tab1
    UNION ALL
    SELECT id FROM tab2;
    non ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 31
    Par défaut
    Merci de me répondre si vite

    Oui, j'avais essayé mais à chaque fois Oracle me balance une exception :

    SQL Error: ORA-00947: Nombre de valeurs insuffisant

    Pourtant la troisième table a bien que deux champs à remplir. Je ne vois pas ce qu'il veut dire par là.

    Alors je ne sais plus trop quoi faire.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 31
    Par défaut
    Au fait, je sais pourquoi Oracle me met ce message d'erreur. J'ai donc compris pourquoi pas je n'arrive à insérer les valeurs.

    En fait, la troisième table comprend deux champs. Un champ pour l'ID de la première table et le deuxième champ pour l'Id de la deuxième table.

    Je voudrai insérer 50 ID de la deuxième table pour un ID de la première table

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    t1.ID   t2.ID
    ------------
    1        11
    1        12
    2        13
    2        14
    3        15
    Avez-vous une solution svp??

    Merci

  5. #5
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    comment tu couples les id de tab1 et tab2 ?

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 31
    Par défaut
    Bah justement,

    C'est ce que je voudrai savoir. Comment faire pour les coupler.

    En fait, je pensais d'abord faire un select de la table 1 pour récupérer les Id et ensuite faire une boucle pour de 1 à 50 pour insérer les Id de la table 2 pour un id de la table 1.

    Mais je ne sais pas comment m'y prendre.

    Si il y a plus simple, je suis preneur...

    Merci

Discussions similaires

  1. [SQL] Insert into select(s)
    Par tidou95220 dans le forum SAS Base
    Réponses: 3
    Dernier message: 25/03/2013, 12h14
  2. [SQL] Problème de guillemets dans un INSERT INTO SELECT
    Par Lenezir dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 25/02/2008, 14h21
  3. hibernate sql insert vs select
    Par mauroyb0 dans le forum Hibernate
    Réponses: 11
    Dernier message: 27/03/2007, 16h32
  4. Réponses: 1
    Dernier message: 22/09/2006, 13h56
  5. SQL : syntaxe insert into select
    Par chrislauxerrois dans le forum Access
    Réponses: 15
    Dernier message: 31/07/2006, 16h12

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