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

Administration Oracle Discussion :

recompilation automatique des objets invalides


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 87
    Par défaut recompilation automatique des objets invalides
    bonjour,

    Depuis que j'utilise la 10g, la recompilation automatique des objets automatique se comporte différemment. Désormais, les sessions qui étaient ouvertes lors de la compilation d'un package doivent sortir complètement de leur session pour en ouvrir une nouvelle .

    Sur les précédentes versions d'oracle, il suffisait de valider le message indiquant que l'objet était invalide, et la recompilation n'imposait pas de sortir de sa session.

    Est-ce que la base que j'utilise a une configuration particulière ?
    ou est-ce la 10g qui impose cela ?

    Merci d'avance pour vos réponses

  2. #2
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Si la compilation touche au body (modification de prototypes de fonctions) et/ou variables du package, tu auras forcement lors du prochain appel au package une erreur car l'instance de ton package au sein de ta session est devenue invalide, cela quelque soit la version du serveur.
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  3. #3
    Membre Expert Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Par défaut
    Je corrige
    Si la compilation touche au body (modification de prototypes de fonctions) et/ou variables du package
    En fait c'est si tu modifies les SPEC (prototype) que les objets référencées par le package sont invalidés.
    Si tu touche au "body" (??), il ne se passe rien.

  4. #4
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Effectivement, mon clavier a fourché !

    C'est bien aux spécifications de packages et non aux corps de packages auxquelles je faisais référence !

    Désolé si j'ai induis certains en erreur !
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  5. #5
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Je confirme que si package contient une variable de session, il y a erreur en 9i ou en 10g même si la spec. du package n'est pas modifiée. Voir les scénarios que j'ai posté sur OTN.

  6. #6
    Membre éprouvé

    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 87
    Par défaut
    Merci pour vos infos.
    Je vais y perdre énormément en terme de souplesse. Tous mes packages ont une variable globale qui précise le nom du package lui-même.

    Y a-t-il une solution pour éviter ce mode ?
    C'est très lourd pour les modifs en "live"

  7. #7
    Membre Expert Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Par défaut
    - Faire un variable "privée" (cad non déclarée dans les spec) : ex NomProc
    - Faire une fonction "publique" (cad déclarée dans les specs) qui te retourne la valeur de cette variable (ex : GetNomProc )
    Tu pourras ainsi modifier la valeur de cette variable sans changer le statut des specs
    Au fait, pourquoi dans ton cas ne pas faire une constante ?

  8. #8
    Membre éprouvé

    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 87
    Par défaut
    en fait je pensais plutot à un changement de paramétrage sur oracle .
    Il faudrait effectivement changer tous les packages existant mais je pense qu'il y a une bonne raison pour que cette variable soit globale.

    Merci pour tes infos et à+

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

Discussions similaires

  1. Instanciation automatique des objets dans les formulaires
    Par vincent7894 dans le forum Spring Web
    Réponses: 2
    Dernier message: 21/02/2012, 09h58
  2. [WD-2007] mise à jour automatique des objets
    Par law56100 dans le forum Word
    Réponses: 0
    Dernier message: 31/08/2009, 14h01
  3. SugarCRM - tag automatique des emails invalides
    Par Sugar1 dans le forum SugarCRM
    Réponses: 0
    Dernier message: 10/03/2009, 10h07
  4. Remise à zéro de la numérotation automatique des objets dessins d'Excel
    Par conconbrr dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 02/01/2008, 10h36
  5. Position "automatique" des objets
    Par pwfsic dans le forum MATLAB
    Réponses: 4
    Dernier message: 13/06/2007, 12h59

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