|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre du Club
![]() |
Bonjour à toutes et à tous.
J'ai un petit soucis sur Oracle. Voilà le topo. J'ai fait un export/import d'une base. Cette base contient entre autre une séquence. Or cette séquence, après import, n'est pas à jour, ce qui provoque un plantage en règle d'un de mes traitements qui me retourne une erreur de violation de contrainte unique. Mon parfile : Code :
1. si les séquences sont bien exportées lors d'un export. 2. comment mettre à jour proprement une séquence après un import ? Merci d'avance pour vos réponses. Cdt. Bahan |
||
|
|
00
|
|
|
#2 | |
|
Expert Confirmé
![]() Inscription : février 2006 Messages : 3 433 ![]() |
Les séquences sont exportées oui mais pas forcément avec la bonne valeur:
Citation:
- récupérer une bonne valeur pour chaque séquence - mettre à jour la séquence: voir http://www.developpez.net/forums/sho....php?t=319906& |
|
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() |
Ok, merci pour l'information.
J'ai donc vu ce qu'il me fallait faire. 1. Récupérer la plus haute valeur que j'ai dans ma table qui utilise la séquence. 2. Récupérer la valeur actuelle de ma séquence 3. Faire la différence des deux 4. Augmenter le pas de ma séquence : Code :
ALTER sequence masequence increment BY Difference; 6. Remettre le pas à 1 Code :
ALTER sequence masequence increment BY 1 ; 1. Récupérer la plus haute valeur de clef primaire que j'ai dans la table qui utilise la séquence. 2. Supprimer la séquence 3. Recréer la séquence en commençant au maximum que j'ai relevé +1 Code :
CREATE sequence masequence start WITH MaxValeur+1 Cdt. Bahan |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
Tout a fait propre (et plus simple)
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com