Séquence ORACLE sans trous
Fermé
belmed2006
Messages postés
1
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
12 mai 2008
-
12 mai 2008 à 15:31
EBD - 18 avril 2011 à 22:49
EBD - 18 avril 2011 à 22:49
A voir également:
- Séquence ORACLE sans trous
- Séquence oracle - Astuces et Solutions
- Datediff oracle ✓ - Forum Oracle
- Oracle limit ✓ - Forum Oracle
- Identificateur non valide oracle ✓ - Forum Bases de données
- Oracle liste des tables ✓ - Forum Oracle
2 réponses
Bonjour.
Verifier si une valeur est positionnée dans le parametre CACHE de la sequence. Il y a de grandes chances que les trous correspondent au nombre du cache qui semblent etre perdues chaque fois que l'on ferme la session.
Si cela correspond, faire un " ALTER nomsequence NOCACHE"
Verifier si une valeur est positionnée dans le parametre CACHE de la sequence. Il y a de grandes chances que les trous correspondent au nombre du cache qui semblent etre perdues chaque fois que l'on ferme la session.
Si cela correspond, faire un " ALTER nomsequence NOCACHE"
Moi aussi j'ai le ce problème de gestion des séquences en Oracle. Quelqu'un peut il m'aider à gérer mes
séquences de manière à ne plus avoir des numeros sautés?
Merci d'avance
séquences de manière à ne plus avoir des numeros sautés?
Merci d'avance
C'est peut être normal, car la lecture de NextVal incrémente la valeur définitivement, même en cas d'échec sur la requête de mise à jour qui l'utilise:
1) lecture de MASEQUENCE.NEXTVAL (ex : 100)
2) Requête de mise à jour (insert, update de MA_TABLE) utilisant le numéro (100) échoue
2nde tentative
3) lecture de MASEQUENCE.NEXTVAL (ex : 101)
4) Requête de mise à jour (insert, update de MA_TABLE) utilisant le numéro (101) réussie
... MA_TABLE ne contient aucune ligne pour le numéro 100
1) lecture de MASEQUENCE.NEXTVAL (ex : 100)
2) Requête de mise à jour (insert, update de MA_TABLE) utilisant le numéro (100) échoue
2nde tentative
3) lecture de MASEQUENCE.NEXTVAL (ex : 101)
4) Requête de mise à jour (insert, update de MA_TABLE) utilisant le numéro (101) réussie
... MA_TABLE ne contient aucune ligne pour le numéro 100