Question

Pour répondre à certaines exigences d'affaires bizarres, je vais devoir mettre en œuvre mes propres compteurs de séquence semblable. Je vais faire une première coupe de cette manière évidente, mais je voudrais comprendre un peu plus sur la façon dont Oracle met en œuvre des séquences. Par exemple, ils peuvent utiliser des verrous à la place des serrures?

Je suis incapable de trouver beaucoup à ce sujet sur le web, donc des pointeurs DOCS ainsi qu'un aperçu de votre accueil expérience personnelle!

(RAC 10g, si elle importe)

Était-ce utile?

La solution

Je ne pense pas que Oracle a publié le fonctionnement interne des séquences, mais Jonathan Lewis a écrit une analyse détaillée de la façon dont ils fonctionnent ici . A partir de ce document:

  

Parce que le mécanisme est interne   Oracle, il est très efficace et   contourne la contention de verrouillage normale   qui apparaît avec le traditionnel   L'utilisateur final tables codé » de la séquence A   objet séquence: « donnez-moi la prochaine   numéro disponible » et « me rappeler ce que   qui était à nouveau; Voici les    nextval et CURRVAL Appels   respectivement.

     

La demande nextval   va dans le cache global pour obtenir la   prochaine valeur de la séquence disponible et   recopié à la session de locaux   mémoire.

Autres conseils

Voulez-vous / ont besoin d'une séquence gapless des chiffres? Lisez ceci: http: // asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:4343369880986

Je pense que vous devez expliquer pourquoi vous auriez besoin d'implémenter votre propre séquence. Si nous connaissons le problème que vous essayez de résoudre, nous pouvons être en mesure de vous donner une réponse afin que vous n'auriez pas à faire votre propre séquence personnalisée.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top