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

Informatica Discussion :

CURVAL dans Sequence Generator


Sujet :

Informatica

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

    Informations forums :
    Inscription : Février 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut CURVAL dans Sequence Generator
    Bonjour,

    Pouvez vous me dire à quoi sert le champs CURVAL dans le Séquence Generator? J'ai bien compris que c'était le Nextval +1 mais quel est l'intéret?

    2e question: la génération automatique de clés sous oracle est-elle une meilleure solution que le Séquence Generator d'Informatica?

    Merci!

  2. #2
    Inactif  

    Homme Profil pro
    Freelance EURL / Business Intelligence ETL
    Inscrit en
    Avril 2005
    Messages
    5 879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance EURL / Business Intelligence ETL
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2005
    Messages : 5 879
    Points : 26 147
    Points
    26 147
    Billets dans le blog
    3
    Par défaut
    Bonjour encore,

    Comme tu dis, Currval c'est Nextval + Increment by value. C'est une nuance, mais de manière générale on utilise un incrément de 1. Comme tu l'as imaginé (voir ta question plus bas), on utilise généralement le séquenceur comme générateur de clés donc le mieux est de garder 1

    Sinon je n'ai personnellement jamais vu utiliser Currval, j'imagine que ce peut être utile si tu veux essayer de comparer les valeurs du générateur mais il faut si possible ne pas l'utiliser pour des questions de performance : si tu utilises currval il risque d'y avoir des dégradations de temps de traitement. Je ne me souviens plus de la raison, il me semble qu'une seule ligne passe à la fois.

    Pour ta deuxième question : personnellement je ne suis pas fan de la génération de clé par Oracle, les ETL en général travaillent sur des datawarehouses et il peut y avoir plusieurs lignes qui ont la même clé. L'unicité d'une ligne se fait par clé + date de valorisation (certaines lignes sont archivées mais doivent rester présente), tout en gardant une seule ligne active (en général il y a un champ de validité, qui prend comme valeur 1, et devient 0 en cas d'archivage, il y a donc une seule ligne par clé avec la valeur 1 et de 0 à beaucoup avec valeur zéro).

    La génération de clé via Oracle peut mettre la grouille. Mieux vaut faire ça artisanalement. C'est vrai que c'est plutôt fastidieux, mais si tu le fais une fois tu pourras le faire pour tout le reste de tes projets, c'est plutôt très simple en fait.

    Manière artisanale : le mieux est d'aller chercher le maximum de la clé de la table que tu vas alimenter via une lookup (voir ta question sur les lookups) puis en cas d'insertion créer un champ calculé par ce max plus le Nextval avec un incrément de 1.
    - So.... what exactly is preventing us from doing this?
    - Geometry.
    - Just ignore it !!
    ****
    "The longer he lived, the more he realized that nothing was simple and little was true" A clash of Kings, George R. R. Martin.
    ***
    Quand arrivera l'apocalypse, il restera deux types d'entreprise : les pompes funèbres et les cabinets d'audit. - zecreator, 21/05/2019

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

    Informations forums :
    Inscription : Février 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Merci pour cette réponse très claire et très complète!

Discussions similaires

  1. [1.x] substr dans admin-generator
    Par nlefebvre1 dans le forum Symfony
    Réponses: 1
    Dernier message: 09/05/2011, 18h22
  2. [1.x] created_at et updated_at dans admin-generator
    Par Mordri dans le forum Débuter
    Réponses: 2
    Dernier message: 06/05/2011, 13h45
  3. [1.x] textarea_tag dans mon generator.yml
    Par coupolites dans le forum Symfony
    Réponses: 9
    Dernier message: 12/11/2009, 17h07
  4. Transformation Sequence Generator
    Par Edna24 dans le forum Informatica
    Réponses: 1
    Dernier message: 10/07/2009, 16h44
  5. [AS400] Saut de ligne dans une generation de requete
    Par Agent_Nivek dans le forum DB2
    Réponses: 4
    Dernier message: 26/03/2009, 18h57

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