Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Administration
Administration Forum d'entraide sur les outils d'administration natifs pour Firebird: gbak, gfix, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/08/2006, 16h10   #1
Membre à l'essai
 
Inscription : août 2003
Messages : 72
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 72
Points : 22
Points : 22
Par défaut Impossible d'activer un index

Bonjour,

J'ai quelques problèmes pour activer un index.
Lorsque je lance Alter index ENTXRES_1 active il me met le message d'erreur suivant :
"Attempt to store duplicate value (visible to active transaction) in unique index "ENTXRES_1" ".
Je suppose que je possède des valeurs identiques dans le champ de l'index pour deux enregistrements différents, c'est pourquoi il me jette dans la mesure où mon index est une clé primaire.

Comment connaitre le contenu de l'index sous IBConsole ou autre ? Je ne connais pas le(s) champ(s) sur lequel(s) porte l'index.

Merci,
bencot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2006, 17h12   #2
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
sous isql : SHOW {INDICES | INDEX {index | tables}};
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 08h50   #3
Membre à l'essai
 
Inscription : août 2003
Messages : 72
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 72
Points : 22
Points : 22
Sur un SGBDR qui ne me pose pas de problème, je peux désactiver l'index sur la clef primaire mais lorsque j'essaye de le réactiver j'obtiens exactement le même message d'erreur...je n'y comprend plus rien...
bencot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 10h18   #4
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
sur un SGBDR ??? une base tu veux dire ?
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 11h45   #5
Membre à l'essai
 
Inscription : août 2003
Messages : 72
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 72
Points : 22
Points : 22
Oui, sur une sauvegarde de cette même base (SGBDR) qui ne me posait pas de problème
bencot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 12h07   #6
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
tu veux dire après un backup restore avec gbak ?
alors il faut que tu détectes les doublons et les corriges, après tu pourras réactiver ton index
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 14h39   #7
Membre à l'essai
 
Inscription : août 2003
Messages : 72
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 72
Points : 22
Points : 22
Oui tout a fait, c'est suite à un backup / restore avec GBak...
Auriez vous une solution simple pour pouvoir détecter les doublons dans cette table ?
bencot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 15h06   #8
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
pour juste les lister :
Code :
1
2
3
4
5
6
SELECT
c0.some_value
FROM your_table c0, your_table c1
WHERE
c0.some_value=c1.some_value AND
c0.rdb$db_key>c1.rdb$db_key
pour les supprimer sans les lister
Code :
1
2
3
4
5
6
DELETE FROM your_table r
WHERE r.rdb$db_key IN (
SELECT c0.rdb$db_key
FROM your_table c0 JOIN repet c1
ON c0.some_value=c1.some_value
AND c0.rdb$db_key>c1.rdb$db_key)
Le champ some_value étant celui où l'on ne veux pas de doublon
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 15h44   #9
Membre à l'essai
 
Inscription : août 2003
Messages : 72
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 72
Points : 22
Points : 22
Merci pour votre aide.

Existe t'il une autre méthode que de passer par isql pour retrouver sur quels champs pointe cet index ?
bencot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 15h48   #10
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
certainement, mais isql est le plus simple et le plus fiable
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/09/2006, 09h01   #11
Membre à l'essai
 
Inscription : août 2003
Messages : 72
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 72
Points : 22
Points : 22
J'essaye d'utiliser iSql mais je ne vois pas comment me conecter à ma base interbase.
ISql m'indique que les drivers JDBC ne sont pas connectés...je ne vois pas comment faire.
bencot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/09/2006, 09h24   #12
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
jdbc ?
mais isql, n'as pas besoin de jdbc
je parle de /firebird/bin/isql ou /interbase/bin/isql
l'outil livré avec Firebird ou Interbase
Code :
isql mabase -user monuser -password monpass
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h33.


 
 
 
 
Partenaires

Hébergement Web