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

SQL Oracle Discussion :

ORA-01407: erreur oracle incompréhensible


Sujet :

SQL Oracle

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 4
    Points
    4
    Par défaut ORA-01407: erreur oracle incompréhensible
    Bonjour,

    cela fait 2 jours que je rencontre l'erreur suivante lors d'une requête SQL et je n'arrive pas à m'en dépatouiller Error: ORA-01407: cannot update str %s ("valeur1") to NULL.
    J'ai testé chacune des sous-requêtes, j'ai aucune valeur NULL remontée. :/ La requête fonctionne dans certains cas : je n'ai pas mis la clause where, car j'ai reproduit le problème en exécutant juste cette requête.

    Si quelqu'un a une piste, celà serait super.
    En vous remerciant par avance

    ci - joint la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
        UPDATE TABLE_ONE t1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
        SET (t1.valeur1, t1.valeur2, t1.valeur3, t1.valeur4, t1.valeur5, t1.valeur6) =                                                                                                                                                                      
            (select substr(STRING_CHARACTERS, 1, 6) as niv1,                                                                                                                                                                                                                                                                                                      
                    substr(STRING_CHARACTERS, 7, 6) as niv2,                                                                                                                                                                                                                                                                                                      
                    substr(STRING_CHARACTERS, 13, 6) as niv3,                                                                                                                                                                                                                                                                                                     
                    substr(STRING_CHARACTERS, 19, 6) as niv4,                                                                                                                                                                                                                                                                                                     
                    substr(STRING_CHARACTERS, 25, 6) as niv5,                                                                                                                                                                                                                                                                                                     
                    substr(STRING_CHARACTERS, 31, 6) as niv6                                                                                                                                                                                                                                                                                                      
             from (select TABLE_2.*, nvl( case                                                                                                                                                                                                                                                                                                                                     
                               when TABLE_2.ser_in_agerer = 'O' then  TABLE_2.valeur_niv1 || TABLE_2.valeur_niv2 || TABLE_2.valeur_niv3 || TABLE_2.valeur_niv4 || TABLE_2.valeur_niv5 || TABLE_2.valeur_niv6                                                                                                                                                                      
                               when jointure1.ser_in_agerer = 'O' then  jointure1.valeur_niv1||jointure1.valeur_niv2||jointure1.valeur_niv3||jointure1.valeur_niv4||jointure1.valeur_niv5||jointure1.valeur_niv6                                                                                                                                  
                               when jointure2.ser_in_agerer = 'O' then  jointure2.valeur_niv1||jointure2.valeur_niv2||jointure2.valeur_niv3||jointure2.valeur_niv4||jointure2.valeur_niv5||jointure2.valeur_niv6                                                                                                                                   
                               when jointure3.ser_in_agerer = 'O' then  jointure3.valeur_niv1||jointure3.valeur_niv2||jointure3.valeur_niv3||jointure3.valeur_niv4||jointure3.valeur_niv5||jointure3.valeur_niv6                                                                                                                                   
                               when jointure4.ser_in_agerer = 'O' then  jointure4.valeur_niv1||jointure4.valeur_niv2||jointure4.valeur_niv3||jointure4.valeur_niv4||jointure4.valeur_niv5||jointure4.valeur_niv6                                                                                                                                   
                               when jointure5.ser_in_agerer = 'O' then  jointure5.valeur_niv1||jointure5.valeur_niv2||jointure5.valeur_niv3||jointure5.valeur_niv4||jointure5.valeur_niv5||jointure5.valeur_niv6                                                                                                                                   
                               end , '                                    ') as STRING_CHARACTERS                                                                                                                                                                                                                                                                         
                   from TABLE_2  TABLE_2                                                                                                                                                                                                                                                                                                                                
                   left outer join TABLE_2 jointure1 on jointure1.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure1.valeur_niv6 = '      ' and  jointure1.valeur_niv5 = TABLE_2.valeur_niv5 and jointure1.valeur_niv4 = TABLE_2.valeur_niv4 and jointure1.valeur_niv3 = TABLE_2.valeur_niv3 and jointure1.valeur_niv2 = TABLE_2.valeur_niv2 and jointure1.valeur_niv1 = TABLE_2.valeur_niv1          
                   left outer join TABLE_2 jointure2 on jointure2.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure2.valeur_niv6 = '      ' and  jointure2.valeur_niv5 = '      ' and jointure2.valeur_niv4 = TABLE_2.valeur_niv4 and jointure2.valeur_niv3 = TABLE_2.valeur_niv3 and jointure2.valeur_niv2 = TABLE_2.valeur_niv2 and jointure2.valeur_niv1 = TABLE_2.valeur_niv1                     
                   left outer join TABLE_2 jointure3 on jointure3.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure3.valeur_niv6 = '      ' and  jointure3.valeur_niv5 = '      ' and jointure3.valeur_niv4 = '      ' and jointure3.valeur_niv3 = TABLE_2.valeur_niv3 and jointure3.valeur_niv2 = TABLE_2.valeur_niv2 and jointure3.valeur_niv1 = TABLE_2.valeur_niv1                                
                   left outer join TABLE_2 jointure4 on jointure4.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure4.valeur_niv6 = '      ' and  jointure4.valeur_niv5 = '      ' and jointure4.valeur_niv4 = '      ' and jointure4.valeur_niv3 = '      ' and jointure4.valeur_niv2 = TABLE_2.valeur_niv2 and jointure4.valeur_niv1 = TABLE_2.valeur_niv1                                           
                   left outer join TABLE_2 jointure5 on jointure5.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure5.valeur_niv6 = '      ' and  jointure5.valeur_niv5 = '      ' and jointure5.valeur_niv4 = '      ' and jointure5.valeur_niv3 = '      ' and jointure5.valeur_niv2 = '      ' and jointure5.valeur_niv1 = TABLE_2.valeur_niv1                                                                                                                                                                                                                                                                                                                                      
            where TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY'))                                                                                                                                                                                                                                                                                                                                                     
             where valeur_niv1 = t1.valeurbis1                                                                                                                                                                                                                                                                                                                
               and valeur_niv2 = t1.valeurbis2                                                                                                                                                                                                                                                                                                                
               and valeur_niv3 = t1.valeurbis3                                                                                                                                                                                                                                                                                                                
               and valeur_niv4 = t1.valeurbis4                                                                                                                                                                                                                                                                                                                
               and valeur_niv5 = t1.valeurbis5                                                                                                                                                                                                                                                                                                                
               and valeur_niv6 = t1.valeurbis6                                                                                                                                                                                                                                                                                                                
            )                                                                                                                                                                                                                                                                                                                                                           
        WHERE          { some conditions }

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 197
    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 197
    Points : 12 772
    Points
    12 772
    Par défaut
    Bonjour,
    Il faudrait penser aux balises, car la requête est ici difficile à lire...
    Sinon une première piste: qu'est-ce qu'il se passe ici si la sous-requête ne renvoie rien pour une ligne de table_one ?
    Autre piste, je vois ceci dans les jointures:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ...  and TABLE_2.date_fin_validite = to_date('31/12/9999','DD/MM/YYYY')...
    Or dans le WHERE nous avons ceci:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    where TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY')
    Ce n'est pas la même année, donc pour moi aucune des jointures ne peux vérifier la condition.

    Tatayo.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Bonjour, autant
    pour moi, j'ai oublié de remplacer la date mais ce sont les 2 mêmes dates en réalité.

    J'ai testé la sous requête suivante et elle renvoie bien des résultats et 0 Null à l'horizon:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    select TABLE_2.*, nvl( case                                                                                                                                                                                                                                                                                                                                     
                               when TABLE_2.ser_in_agerer = 'O' then  TABLE_2.valeur_niv1 || TABLE_2.valeur_niv2 || TABLE_2.valeur_niv3 || TABLE_2.valeur_niv4 || TABLE_2.valeur_niv5 || TABLE_2.valeur_niv6                                                                                                                                                                      
                               when jointure1.ser_in_agerer = 'O' then  jointure1.valeur_niv1||jointure1.valeur_niv2||jointure1.valeur_niv3||jointure1.valeur_niv4||jointure1.valeur_niv5||jointure1.valeur_niv6                                                                                                                                  
                               when jointure2.ser_in_agerer = 'O' then  jointure2.valeur_niv1||jointure2.valeur_niv2||jointure2.valeur_niv3||jointure2.valeur_niv4||jointure2.valeur_niv5||jointure2.valeur_niv6                                                                                                                                   
                               when jointure3.ser_in_agerer = 'O' then  jointure3.valeur_niv1||jointure3.valeur_niv2||jointure3.valeur_niv3||jointure3.valeur_niv4||jointure3.valeur_niv5||jointure3.valeur_niv6                                                                                                                                   
                               when jointure4.ser_in_agerer = 'O' then  jointure4.valeur_niv1||jointure4.valeur_niv2||jointure4.valeur_niv3||jointure4.valeur_niv4||jointure4.valeur_niv5||jointure4.valeur_niv6                                                                                                                                   
                               when jointure5.ser_in_agerer = 'O' then  jointure5.valeur_niv1||jointure5.valeur_niv2||jointure5.valeur_niv3||jointure5.valeur_niv4||jointure5.valeur_niv5||jointure5.valeur_niv6                                                                                                                                   
                               end , '                                    ') as STRING_CHARACTERS                                                                                                                                                                                                                                                                         
                   from TABLE_2  TABLE_2                                                                                                                                                                                                                                                                                                                                
                   left outer join TABLE_2 jointure1 on jointure1.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure1.valeur_niv6 = '      ' and  jointure1.valeur_niv5 = TABLE_2.valeur_niv5 and jointure1.valeur_niv4 = TABLE_2.valeur_niv4 and jointure1.valeur_niv3 = TABLE_2.valeur_niv3 and jointure1.valeur_niv2 = TABLE_2.valeur_niv2 and jointure1.valeur_niv1 = TABLE_2.valeur_niv1          
                   left outer join TABLE_2 jointure2 on jointure2.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure2.valeur_niv6 = '      ' and  jointure2.valeur_niv5 = '      ' and jointure2.valeur_niv4 = TABLE_2.valeur_niv4 and jointure2.valeur_niv3 = TABLE_2.valeur_niv3 and jointure2.valeur_niv2 = TABLE_2.valeur_niv2 and jointure2.valeur_niv1 = TABLE_2.valeur_niv1                     
                   left outer join TABLE_2 jointure3 on jointure3.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure3.valeur_niv6 = '      ' and  jointure3.valeur_niv5 = '      ' and jointure3.valeur_niv4 = '      ' and jointure3.valeur_niv3 = TABLE_2.valeur_niv3 and jointure3.valeur_niv2 = TABLE_2.valeur_niv2 and jointure3.valeur_niv1 = TABLE_2.valeur_niv1                                
                   left outer join TABLE_2 jointure4 on jointure4.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure4.valeur_niv6 = '      ' and  jointure4.valeur_niv5 = '      ' and jointure4.valeur_niv4 = '      ' and jointure4.valeur_niv3 = '      ' and jointure4.valeur_niv2 = TABLE_2.valeur_niv2 and jointure4.valeur_niv1 = TABLE_2.valeur_niv1                                           
                   left outer join TABLE_2 jointure5 on jointure5.date_fin_validite = TABLE_2.date_fin_validite and TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY') and jointure5.valeur_niv6 = '      ' and  jointure5.valeur_niv5 = '      ' and jointure5.valeur_niv4 = '      ' and jointure5.valeur_niv3 = '      ' and jointure5.valeur_niv2 = '      ' and jointure5.valeur_niv1 = TABLE_2.valeur_niv1                                                                                                                                                                                                                                                                                                                                      
            where TABLE_2.date_fin_validite = to_date('31/12/2001','DD/MM/YYYY')

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 197
    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 197
    Points : 12 772
    Points
    12 772
    Par défaut
    Il reste toujours la première question: que se passe t'il si pour une ligne de table_one, la requête ne renvoie rien ?
    Est-ce que la colonne STRING_CHARACTERS fait toujours au moins 37 caractères ?

    Tatayo.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Bonjour Tatayo,
    merci de prendre le temps de répondre à ma question.

    Toutes les valeurs niv{x} font 6 caractères ou vide avec des espaces de 6 caractères (c'est vérifié en éxécutant la sous-requête). Dans le case, on met 36 caractères à blanc si on ne trouve rien, donc théoriquement les substr sont bien remplis et découpés.

    Cette requête me rends fou.. Mais peut être, je n'ai pas compris votre question.

    Merci pour votre retour.

  6. #6
    Membre émérite Avatar de vttman
    Homme Profil pro
    Développeur "couteau mosellan"
    Inscrit en
    Décembre 2002
    Messages
    1 140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur "couteau mosellan"
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 140
    Points : 2 286
    Points
    2 286
    Par défaut
    Bonjour,
    Il n'y a pas de valeur NULL dans les valeur_nivX de TABLE_2 ?
    et qui me/nous dit qu'il y a toujours quelque chose à "updater" ?
    Emérite, émérite je ne pense pas ... plutôt dans le développement depuis FORT FORT longtemps, c'est mon job, ça oui
    A part ça ... Il ne pleut jamais en Moselle !

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Bonjour
    Non j'ai vérifié déjà ce point en testant les champs à is not null, ils sont soit remplis par 6 chiffres, soit 6 espaces et cela toujours le cas.

    Pour le deuxième point si aucun truc à updater (clause where non respectées du UPDATE) justement la requête ne devrait rien effectuer, non?

  8. #8
    Membre émérite Avatar de vttman
    Homme Profil pro
    Développeur "couteau mosellan"
    Inscrit en
    Décembre 2002
    Messages
    1 140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur "couteau mosellan"
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 140
    Points : 2 286
    Points
    2 286
    Par défaut
    ... truc à updater ...
    A voir ... prenons un exemple sous Mysql sans se fouler et puis c'est tout ce que j'ai sous la main

    1)=>
    Table x ...
    --------------
    chp1
    1
    2

    2)=>
    Table xx ...
    --------------
    chp1/chp2/chp3
    1/a/a
    2/b/b
    3/c/c

    3)chp1 = 1 existe dans x et xx
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    update xx 
    set chp2 = (select chp1 from x where xx.chp1 = x.chp1)
    where xx.chp1 = 1;
    =>
    Table xx ...
    --------------
    chp1/chp2/chp3
    1/a/a
    2/2/b
    3/c/c


    4)chp1 = 3 existe dans xx uniquement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    update xx 
    set chp2 = (select chp1 from x where xx.chp1 = x.chp1)
    where xx.chp1 = 3;
    =>
    MySQL a répondu: Documentation
    #1048 - Le champ 'chp2' ne peut être vide (null)
    Emérite, émérite je ne pense pas ... plutôt dans le développement depuis FORT FORT longtemps, c'est mon job, ça oui
    A part ça ... Il ne pleut jamais en Moselle !

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Ah je comprends mieux mais du coup vu que ma requete est consequente je ne sais pas comment la modifier pour eviter ce cas

  10. #10
    Membre émérite Avatar de vttman
    Homme Profil pro
    Développeur "couteau mosellan"
    Inscrit en
    Décembre 2002
    Messages
    1 140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur "couteau mosellan"
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 140
    Points : 2 286
    Points
    2 286
    Par défaut
    Si le cas peut se produire alors tester et traiter ce code erreur (ORA-01407)
    Sinon faire un count avant pour savoir s'il y a quelque chose à updater ...

    Ou alors s'arranger pour créer une vue et voir du coté de l'instruction exists ?
    [EDIT] La vue pour simplifier l'écriture et éviter les erreurs en dupliquant de gros pavés ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    UPDATE TABLE_ONE t1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
        SET (t1.valeur1, t1.valeur2, t1.valeur3, t1.valeur4, t1.valeur5, t1.valeur6) =                                                                                                                                                                      
            (select substr(STRING_CHARACTERS, 1, 6) as niv1,                                                                                                                                                                                                                                                                                                      
                    substr(STRING_CHARACTERS, 7, 6) as niv2,                                                                                                                                                                                                                                                                                                      
                    substr(STRING_CHARACTERS, 13, 6) as niv3,                                                                                                                                                                                                                                                                                                     
                    substr(STRING_CHARACTERS, 19, 6) as niv4,                                                                                                                                                                                                                                                                                                     
                    substr(STRING_CHARACTERS, 25, 6) as niv5,                                                                                                                                                                                                                                                                                                     
                    substr(STRING_CHARACTERS, 31, 6) as niv6   from MAVUE)
           where exists (select 1 from MAVUE)
    ou attendre l'avis de spécialistes
    Emérite, émérite je ne pense pas ... plutôt dans le développement depuis FORT FORT longtemps, c'est mon job, ça oui
    A part ça ... Il ne pleut jamais en Moselle !

  11. #11
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 789
    Points
    30 789
    Par défaut
    Regarde l’instruction MERGE ; elle permet de faire des mises à jour à partir de requêtes complexes de manière bien plus pratique.
    Et elle peut être bien plus rapide qu'un UPDATE
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  12. #12
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Malheureusement le langage pour appeller mes requetes que j'utilise ne me permets pas de faire de merge:/

  13. #13
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Malheureusement le langage pour appeller mes requetes que j'utilise ne me permets pas de faire de merge:/

  14. #14
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 789
    Points
    30 789
    Par défaut
    Je ne comprends pas bien Une requête SQL est autonome, quel que soit le langage dans laquelle elle est encapsulée.
    Au pire, si tu as des procédures spécifiques pour appeler INSERT ou UPDATE et, je suppose, récupérer le nombre de lignes prises en compte, tu dois aussi avoir des procédures plus génériques te permettant d'exécuter un DDL par exemple.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

Discussions similaires

  1. ORA-01407: erreur oracle incompréhensible
    Par artif27 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 24/02/2017, 21h42
  2. Erreur oracle incompréhensible. . .
    Par SQLpro dans le forum Débuter
    Réponses: 3
    Dernier message: 23/03/2011, 17h25
  3. [ORA-01652] Erreur Oracle
    Par ttamttam dans le forum Débuter
    Réponses: 21
    Dernier message: 16/08/2010, 19h43
  4. Erreur Oracle ORA-00959
    Par Longrais dans le forum Oracle
    Réponses: 1
    Dernier message: 03/10/2006, 10h49
  5. Erreur Oracle ORA-30036
    Par lapartdombre dans le forum Oracle
    Réponses: 5
    Dernier message: 04/11/2005, 15h37

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