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 :

Commande SQL qui ne fait pas update ?


Sujet :

PL/SQL Oracle

  1. #1
    Battosaiii
    Invité(e)
    Par défaut Commande SQL qui ne fait pas update ?
    Bonjour,

    J'ai réalisé 2 commandes sql dans une boucle pl sql.
    L'update sur la table Document marche mais pas sur la table radiologie.

    La table radiologie est modifié mais avec toujours les memes valeurs . Je n'ai aucune idée pourquoi dans le cas de la table document l'update se passe bien mais pas dans le cas de la table radiologie.

    Je ne comprends pas pourquoi il y a une mauvaise update de la table Radiologie dans ce code :

    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
    33
    34
    35
    36
    37
     
    DECLARE
     
    CURSOR c_SAG_DATA IS
    SELECT * FROM SAG_DATA_TEMP;
     
    BEGIN
     
        FOR j IN c_SAG_DATA LOOP
     
     
    	UPDATE  radiologie rad 
    	SET     rad.uh_demandeuse   = j.code_uh_demande
    		,   rad.nip             = j.nip_actif
    	WHERE   EXISTS
    			(   SELECT  1
    				FROM    radiologie rad
    				WHERE   CONCAT(rad.id_demande, rad.id_examen) = j.s_aphp_reference_acte_rados
    			);
     
     
    	UPDATE  document doc 
    	SET     doc.nda     = j.nda
    		,   doc.noip    = j.nip_actif
    	WHERE   EXISTS
    			(   SELECT  1
    				FROM    radiologie rad
    				WHERE   CONCAT(rad.id_demande, rad.id_examen) = j.s_aphp_reference_acte_rados
    					AND rad.id_document_lie = doc.id_document
    			);
     
        END LOOP;
    COMMIT;
     
    END;
    /
    exit;

    Merci
    Dernière modification par Battosaiii ; 27/07/2011 à 14h18.

  2. #2
    Battosaiii
    Invité(e)
    Par défaut
    Voici la correction de ce probleme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    	UPDATE  radiologie rad 
    	SET     rad.uh_demandeuse   = j.code_uh_demande
    		,   rad.nip             = j.nip_actif
    	WHERE   EXISTS
    			(   SELECT  1
    				FROM    document doc
    				WHERE   CONCAT(rad.id_demande, rad.id_examen) = j.s_aphp_reference_acte_rados
    					AND rad.id_document_lie = doc.id_document
    			);

Discussions similaires

  1. [MySQL] Requête SQL qui ne passe pas (UPDATE)
    Par ZeWiz dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 04/09/2014, 13h25
  2. [MySQL] update qui ne fait pas son travail
    Par jimmo dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 10/05/2014, 14h43
  3. Commande SQL qui ne fonctionne pas dans une JSP
    Par crippy dans le forum JDBC
    Réponses: 1
    Dernier message: 14/12/2012, 09h50
  4. [MySQL] Update SQL qui ne trouve pas mes variables
    Par Actraiser dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 02/06/2011, 00h26
  5. commande SQL qui ne fonctionne pas
    Par Flavien44 dans le forum VBA Access
    Réponses: 5
    Dernier message: 13/06/2007, 16h40

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