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 :

[oracle9i] update qui s'arrete toute seule


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    193
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 193
    Par défaut [oracle9i] update qui s'arrete toute seule
    bonjour

    je suis sous oracle9i, je fais un update d'une table voici mon code :

    P
    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
    ROCEDURE facturation IS
     
    	v_code_rubrique varchar2(5);
    	v_montant_rubrique number(11);
    	v_code_contrat varchar2(11);
    	v_prop varchar2(15);
    	 	cursor c_calcul is select d.contrat_code_contrat,d.rubrique_q_code_rubrique_q,d.montant,s.propriete_code_propriete
    	 from detail_contrat_quit d,suivi_quittance s where d.contrat_code_contrat=s.contrat_code_contrat
    	 	  	  and d.societe=:soc order by d.contrat_code_contrat asc;
    begin
     
    		open c_calcul;
    		fetch c_calcul into	v_code_contrat,v_code_rubrique,v_montant_rubrique,v_prop;
    	  loop
    	  		:message:=v_prop||' en traitement';
    		         synchronize;
    			update variable_quittance set
    		montant_debit=v_montant_rubrique,
    		montant_credit=v_montant_rubrique
    		where
    		contrat_code_contrat=v_code_contrat
    		and  RUBRIQUE_Q_CODE_RUBRIQUE_Q=v_code_RUBRIQUE
    		and  societe=:soc ;
    		fetch c_calcul into	v_code_contrat,v_code_rubrique,v_montant_rubrique,v_prop;
    		commit;  
     
    end loop;
    	close c_calcul;	
    end;
    tout se passe bien mais jusqu'au moment le update sql se bloque toujours à la ligne 4895, la table à mettre à jour fait quelques 12.000 lignes.

    j'aimerai bien savoir ce qui se passe ?

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Désolé je ne réponds pas à votre question, mais pourquoi faire un curseur et pas un ordre d'update qui fait tout d'un coup ?

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    193
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 193
    Par défaut
    je pensais juste que faire un curseur allait être bcps plus efficace d'autant plus que je veux le champ message affiche la ligne qui est traitée

  4. #4
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    193
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 193
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    update variable_quittance v
    set montant_debit=(select montant from detail_contrat d where v.contrat_code_contrat=d.contrat_code_contrat
                         and v.RUBRIQUE_Q_CODE_RUBRIQUE_Q=d.rubrique_q_code_rubrique_q 
                         and d.societe=v.societe and v.societe=:soc)
    ,montant_credit=(select montant from detail_contrat d where v.contrat_code_contrat=d.contrat_code_contrat
                         and v.RUBRIQUE_Q_CODE_RUBRIQUE_Q=d.rubrique_q_code_rubrique_q 
                         and d.societe=v.societe and v.societe=:soc);
    pour waldar

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

Discussions similaires

  1. Des "=" qui se mettent tout seuls dans une TLisBox
    Par [Silk] dans le forum Langage
    Réponses: 2
    Dernier message: 11/11/2005, 12h35
  2. Formulaire qui se valide tout seul :8O:
    Par Boumeur dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/04/2005, 12h21
  3. Avoir un champ qui se decremente tout seul
    Par romeo9423 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 15/02/2005, 04h32
  4. [ContrôleBD] DBCtrlGrid qui se redimensionne tout seul !
    Par LadyWasky dans le forum Composants VCL
    Réponses: 8
    Dernier message: 01/07/2004, 23h08
  5. TCanvas et handle qui se désalloue tout seul
    Par efourmon dans le forum Langage
    Réponses: 3
    Dernier message: 14/01/2004, 11h07

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