Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Outils
Outils Forum d'entraide sur les outils tiers pour Firebird
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 18/05/2004, 22h16   #1
Invité régulier
 
Inscription : mai 2004
Messages : 27
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 27
Points : 8
Points : 8
Par défaut Foreign-key et indices/index

Bonjour,

Dans ma base firebird 1.0.3.xxx, sur les colonnes pour lesquelles il y a une foreign key , on constate via ibconsole, ibexpert,... qu'en meme temps que la creation de la contrainte Foreign key, il a été creer un indice/index RDB$FOREIGN1, alors que moi même j'avais déjà créé un index sur cette même colonne.
Du coup dans la partice indices/index de ibexpert/ibconsole ,... on retouve 2 indices/index pointant sur la meme colonne de la meme table : le RDB$FOREIGNx et mon index nommé IK_TOTO.

1) Y a t-il redondance entre ces 2 informations ?
2) Faut il en supprimer un ?
3) Puis je me passer de mon index ? ou du rdb$foreign ?
4) Comment eviter la creation de rdb$foreign depuis le script de creation.
5) Ou Comment faire pour renommer RBD$foreign1 lors du script de creation, et sans revenir dessus via ibexpert.


exemple du script :
create table PARITE
(
NUMPAR INTEGER not null,
CODE_CATEGORIE CHAR( 8 ) not null,
CODE_NIVEAU CHAR( 8 ) ,
constraint PK_PARITE primary key (NUMPAR)
);

create index I_FK_CATEGORIE_PARITE
on PARITE (CODE_CATEGORIE);

alter table PARITE add
constraint FK_CATEGORIE_PARITE
foreign key (CODE_CATEGORIE)
references CATEGORIE (CODE_CATEGORIE);
mesquest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2004, 23h08   #2
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Par défaut Re: Foreign-key et indices/index

1) Oui
2) Moi je ne crée pas l'index s'il ne correspond qu'à la foreign key
3) Vous pouvez vous passer de l'index
4) Une cle étrangère est forcément une clé (un index) pour accélérer l'accés aux enregistrements.
5) Je ne pense pas que se soit possible du moins en une fois. Lorsque vous le renommez avec IBExpert, regardez le script qui est généré.
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/05/2004, 11h56   #3
Invité régulier
 
Inscription : mai 2004
Messages : 27
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 27
Points : 8
Points : 8
Merci de tes reponses,

5) Je n'est pas resussi par IBExpert a renommer l'index rdb$foreign, un message mini par me dire que l'index de nom Rbd$foreign est obligatoire.

Tant pis, du coup je le laisse comme cela, et je supprime mes index personnel qui font double emploi.
mesquest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/05/2004, 14h22   #4
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Par défaut Re: [resolu] Foreign-key et indices/index

C'est ce que je pensai mais comme vous aviez écrit :
Citation:
Envoyé par mesquest
5) Ou Comment faire pour renommer RBD$foreign1 lors du script de creation, et sans revenir dessus via ibexpert.
j'avais supposé que vous aviez reussi avec IBExpert
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h09.


 
 
 
 
Partenaires

Hébergement Web