Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 8 sur 8
  1. #1
    Membre actif
    Inscrit en
    juin 2006
    Messages
    594
    Détails du profil
    Informations forums :
    Inscription : juin 2006
    Messages : 594
    Points : 150
    Points
    150

    Par défaut Problème avec insert de plusieurs lignes dans Oracle avec toad

    Bonjour je voudrais insérer plusieurs code postaux avec une seul requête:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    INSERT INTO tbl_code_postal (ID_CODE_POSTAL,CODE,LOCALITE,PAYS) VALUES
    (1, 1000, 'BRUXELLES - BRUSSEL', 'B'),
    (2, 1000, 'BRUXELLES', 'B'),
    (3, 1000, 'BRUSSEL', 'B'),
    (9, 1020, 'BRUXELLES', 'B'),
    (10, 1020, 'BRUSSEL', 'B'),
    (12, 1020, 'LAEKEN', 'B'),
    (14, 1030, 'BRUXELLES', 'B'),
    (18, 1040, 'BRUXELLES', 'B'),
    (19, 1040, 'ETTERBEEK', 'B'),
    (31, 1050, 'BRUXELLES', 'B'),
    (33, 1050, 'IXELLES', 'B'),
    (36, 1060, 'BRUXELLES', 'B'),
    (40, 1060, 'SAINT-GILLES', 'B'),
    (42, 1070, 'ANDERLECHT', 'B'),
    (43, 1070, 'BRUXELLES', 'B'),
    (48, 1080, 'BRUXELLES', 'B'),
    (52, 1080, 'MOLENBEEK-SAINT-JEAN', 'B'),
    (53, 1090, 'BRUXELLES', 'B'),
    (55, 1090, 'JETTE', 'B'),
    (58, 1120, 'BRUXELLES', 'B'),
    (59, 1120, 'NEDER-OVER-HEEMBEEK', 'B'),
    (60, 1130, 'BRUXELLES', 'B'),
    (61, 1140, 'BRUXELLES', 'B'),
    (63, 1140, 'EVERE', 'B'),
    (66, 1150, 'BRUXELLES', 'B'),
    (69, 1150, 'WOLUWE-SAINT-PIERRE', 'B'),
    (71, 1160, 'BRUXELLES', 'B'),
    (75, 1170, 'BRUXELLES', 'B'),
    (76, 1170, 'WATERMAEL-BOITSFORT', 'B'),
    (77, 1180, 'BRUXELLES', 'B'),
    (82, 1190, 'BRUXELLES', 'B'),
    (85, 1200, 'BRUXELLES', 'B'),
    (87, 1210, 'BRUXELLES', 'B');
    J'utilise toad, celui-ci me signale une erreur sur la ","(entre la première valeur à insérer et la deuxième) ORA-00933: la commande SQL ne se termine pas correctement.

    Oracle ne permet pas d'insérer plusieurs lignes avec la clause VALUES ????

    Comment puis je faire ??

  2. #2
    Membre chevronné Avatar de islamov2000
    Homme Profil pro islamov islamov
    Ingénieur d'études & developpement en informatique
    Inscrit en
    septembre 2007
    Messages
    581
    Détails du profil
    Informations personnelles :
    Nom : Homme islamov islamov
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : septembre 2007
    Messages : 581
    Points : 772
    Points
    772

    Par défaut

    cerntain SGBD ne supporte pas cette syntaxe
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  3. #3
    Membre chevronné Avatar de islamov2000
    Homme Profil pro islamov islamov
    Ingénieur d'études & developpement en informatique
    Inscrit en
    septembre 2007
    Messages
    581
    Détails du profil
    Informations personnelles :
    Nom : Homme islamov islamov
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : septembre 2007
    Messages : 581
    Points : 772
    Points
    772

    Par défaut

    sinon il y a un autre moyen de faire un insert sous une seule SQL.
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    INSERT inti tbl_code_postal (ID_CODE_POSTAL,CODE,LOCALITE,PAYS) 
    SELECT 1, 1000, 'BRUXELLES - BRUSSEL', 'B' FROM dual union
    SELECT 2, 1000, 'BRUXELLES', 'B' FROM dual union
    SELECT 3, 1000, 'BRUSSEL', 'B' FROM dual union
    SELECT 9, 1020, 'BRUXELLES', 'B' FROM dual union
    SELECT 10, 1020, 'BRUSSEL', 'B' FROM dual union
    SELECT 12, 1020, 'LAEKEN', 'B' FROM dual union
    SELECT 14, 1030, 'BRUXELLES', 'B' FROM dual union
    SELECT 18, 1040, 'BRUXELLES', 'B' FROM dual union
    SELECT 19, 1040, 'ETTERBEEK', 'B' FROM dual union
    SELECT 31, 1050, 'BRUXELLES', 'B' FROM dual union
    SELECT 33, 1050, 'IXELLES', 'B' FROM dual union
    SELECT 36, 1060, 'BRUXELLES', 'B' FROM dual union
    SELECT 40, 1060, 'SAINT-GILLES', 'B' FROM dual union
    SELECT 42, 1070, 'ANDERLECHT', 'B' FROM dual union
    SELECT 43, 1070, 'BRUXELLES', 'B' FROM dual union
    SELECT 48, 1080, 'BRUXELLES', 'B' FROM dual union
    SELECT 52, 1080, 'MOLENBEEK-SAINT-JEAN', 'B' FROM dual union
    SELECT 53, 1090, 'BRUXELLES', 'B' FROM dual union
    SELECT 55, 1090, 'JETTE', 'B' FROM dual union
    SELECT 58, 1120, 'BRUXELLES', 'B' FROM dual union
    SELECT 59, 1120, 'NEDER-OVER-HEEMBEEK', 'B' FROM dual union
    SELECT 60, 1130, 'BRUXELLES', 'B' FROM dual union
    SELECT 61, 1140, 'BRUXELLES', 'B' FROM dual union
    SELECT 63, 1140, 'EVERE', 'B' FROM dual union
    SELECT 66, 1150, 'BRUXELLES', 'B' FROM dual union
    SELECT 69, 1150, 'WOLUWE-SAINT-PIERRE', 'B' FROM dual union
    SELECT 71, 1160, 'BRUXELLES', 'B' FROM dual union
    SELECT 75, 1170, 'BRUXELLES', 'B' FROM dual union
    SELECT 76, 1170, 'WATERMAEL-BOITSFORT', 'B' FROM dual union
    SELECT 77, 1180, 'BRUXELLES', 'B' FROM dual union
    SELECT 82, 1190, 'BRUXELLES', 'B' FROM dual union
    SELECT 85, 1200, 'BRUXELLES', 'B' FROM dual union
    SELECT 87, 1210, 'BRUXELLES', 'B'FROM dual
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  4. #4
    Membre actif
    Inscrit en
    juin 2006
    Messages
    594
    Détails du profil
    Informations forums :
    Inscription : juin 2006
    Messages : 594
    Points : 150
    Points
    150

    Par défaut

    Bonjour merci de ton aide islamov2000 j'ai essayé ceci

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    INSERT INTO tbl_code_postal (ID_CODE_POSTAL,CODE,LOCALITE,PAYS) 
    SELECT 9, 1020, 'BRUXELLES', 'B' FROM dual union
    SELECT 10, 1020, 'BRUSSEL', 'B' FROM dual union
    SELECT 12, 1020, 'LAEKEN', 'B' FROM dual union
    SELECT 14, 1030, 'BRUXELLES', 'B' FROM dual union
    SELECT 18, 1040, 'BRUXELLES', 'B' FROM dual union
    SELECT 19, 1040, 'ETTERBEEK', 'B' FROM dual union
    SELECT 31, 1050, 'BRUXELLES', 'B' FROM dual union ;
    Mais j'ai un message d'erreur:ORA-00928: mot-clé SELECT absent

    Ai je oublié quelque chose ??

    Merci

  5. #5
    Membre chevronné Avatar de islamov2000
    Homme Profil pro islamov islamov
    Ingénieur d'études & developpement en informatique
    Inscrit en
    septembre 2007
    Messages
    581
    Détails du profil
    Informations personnelles :
    Nom : Homme islamov islamov
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : septembre 2007
    Messages : 581
    Points : 772
    Points
    772

    Par défaut

    Tu dois enlever le dernier union, c'est un plus.
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  6. #6
    Membre actif
    Inscrit en
    juin 2006
    Messages
    594
    Détails du profil
    Informations forums :
    Inscription : juin 2006
    Messages : 594
    Points : 150
    Points
    150

    Par défaut

    Désolé j avais fait un copié coller en vitesse.

    Dans ma requête j'ai retiré le dernier union ex:

    Code :
    1
    2
    3
    4
    5
    6
     
     
    INSERT INTO tbl_code_postal SELECT ID_CODE_POSTAL,CODE,LOCALITE,PAYS) 
    SELECT 9, 1020, 'BRUXELLES', 'B' FROM dual union
    SELECT 10, 1020, 'BRUSSEL', 'B' FROM dual union
    SELECT 12, 1020, 'LAEKEN', 'B'
    J'ai toujours l'erreur: ORA-00923: mot-clé FROM absent à l'emplacement prévu

  7. #7
    Membre Expert Avatar de Garuda
    Homme Profil pro Philippe CHIRCOP
    Chef de projet
    Inscrit en
    juin 2007
    Messages
    1 244
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe CHIRCOP
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet
    Secteur : Bâtiment

    Informations forums :
    Inscription : juin 2007
    Messages : 1 244
    Points : 1 824
    Points
    1 824

    Par défaut

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    /* Formatted on 28/11/2012 12:45:12 (QP5 v5.227.12220.39724) */
    INSERT INTO tbl_code_postal (ID_CODE_POSTAL,
                                 CODE,
                                 LOCALITE,
                                 PAYS)
       SELECT *
         FROM (SELECT 9,
                      1020,
                      'BRUXELLES',
                      'B'
                 FROM DUAL
               UNION
               SELECT 10,
                      1020,
                      'BRUSSEL',
                      'B'
                 FROM DUAL
               UNION
               SELECT 12,
                      1020,
                      'LAEKEN',
                      'B'
                 FROM DUAL
               UNION
               SELECT 14,
                      1030,
                      'BRUXELLES',
                      'B'
                 FROM DUAL
               UNION
               SELECT 18,
                      1040,
                      'BRUXELLES',
                      'B'
                 FROM DUAL
               UNION
               SELECT 19,
                      1040,
                      'ETTERBEEK',
                      'B'
                 FROM DUAL
               UNION
               SELECT 31,
                      1050,
                      'BRUXELLES',
                      'B'
                 FROM DUAL)
    Garuda गरूड
    Brahmâ la Guerre et Vishnu la Paix

    Oracle 10.2.0.4 (RAC) - Forms6i patch 17 - Toad 12 - sharePoint 2010

  8. #8
    Modérateur

    Homme Profil pro Fabien
    Ingénieur d'études en décisionnel
    Inscrit en
    septembre 2008
    Messages
    6 821
    Détails du profil
    Informations personnelles :
    Nom : Homme Fabien
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en décisionnel
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : septembre 2008
    Messages : 6 821
    Points : 13 500
    Points
    13 500

    Par défaut

    Citation Envoyé par jacko842 Voir le message
    J'ai toujours l'erreur: ORA-00923: mot-clé FROM absent à l'emplacement prévu
    Oui mais là il manque un FROM dual, comme indiqué par le message d'erreur.
    Il faut aussi apprendre à lire ces derniers dans votre long apprentissage, ils ne sont pas là que pour vous embêter.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •