OVH Cloud OVH Cloud

Foreign key

5 réponses
Avatar
SSO
Bonjour,

Je voudrais savoir si le fait de mettre des r=E9f=E9rences=20
d'int=E9grit=E9 entre 2 tables acc=E9l=E8re le temps de r=E9ponse=20
des requ=EAtes portant sur ces tables?

Merci

5 réponses

Avatar
Patrice
Non, il faut en plus placer un index (qui ne sera utilisée bien sûr que si
les requpêtes s'y prêtent).

Patrice

"SSO" a écrit dans le message de
news:1277301c442f8$bd0c2970$
Bonjour,

Je voudrais savoir si le fait de mettre des références
d'intégrité entre 2 tables accélère le temps de réponse
des requêtes portant sur ces tables?

Merci
Avatar
Fred BROUARD
en général oui... Simplement parce que la mise en place d'une IR implique :
1) indexation des clefs primaire
2) indexation des clefs étrangères
3) empêche la pollution des données dans les colonnes de l'IR

donc un travail plus simple pour le moteur SQL !

A +

SSO a écrit:
Bonjour,

Je voudrais savoir si le fait de mettre des références
d'intégrité entre 2 tables accélère le temps de réponse
des requêtes portant sur ces tables?

Merci





--
Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Avatar
Patrice
Bonjour Fred,

Veux tu dire que la mise en place de l'intégrité référentielle crée
automatiquement un index sur les clés étrangères ? Il ne me semblait pas que
ce soit le cas. (A moins que tu veuilles dire que l'on peut s'attendre à ce
que le concepteur de la base crée des index sur ses FKs ?)

Peux tu confirmer ou non pour la création automatique ? Merci d'avance.

"Fred BROUARD" a écrit dans le message de
news:
en général oui... Simplement parce que la mise en place d'une IR implique


:
1) indexation des clefs primaire
2) indexation des clefs étrangères
3) empêche la pollution des données dans les colonnes de l'IR

donc un travail plus simple pour le moteur SQL !

A +

SSO a écrit:
> Bonjour,
>
> Je voudrais savoir si le fait de mettre des références
> d'intégrité entre 2 tables accélère le temps de réponse
> des requêtes portant sur ces tables?
>
> Merci
>
>

--
Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************



Avatar
Fred BROUARD
Les index sont créés sous les clef primaires automatiquement par SQL Server.

Dans le cas de la pose d'une IR, aucun index n'est créé de prime abord.

Cependant, SQL Server, dans le courant de son utilisation créé des index "cachés" au fur et à mesure des requêtes.

Un outil comme Power Designer, créé automatiquement les index sous jacent au clefs étrangères...

A +

Patrice a écrit:
Bonjour Fred,

Veux tu dire que la mise en place de l'intégrité référentielle crée
automatiquement un index sur les clés étrangères ? Il ne me semblait pas que
ce soit le cas. (A moins que tu veuilles dire que l'on peut s'attendre à ce
que le concepteur de la base crée des index sur ses FKs ?)

Peux tu confirmer ou non pour la création automatique ? Merci d'avance.

"Fred BROUARD" a écrit dans le message de
news:

en général oui... Simplement parce que la mise en place d'une IR implique



:

1) indexation des clefs primaire
2) indexation des clefs étrangères
3) empêche la pollution des données dans les colonnes de l'IR

donc un travail plus simple pour le moteur SQL !

A +

SSO a écrit:

Bonjour,

Je voudrais savoir si le fait de mettre des références
d'intégrité entre 2 tables accélère le temps de réponse
des requêtes portant sur ces tables?

Merci





--
Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************









--
Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Avatar
Fred BROUARD
Les index sont créés sous les clef primaires automatiquement par SQL Server.

Dans le cas de la pose d'une IR, aucun index n'est créé de prime abord.

Cependant, SQL Server, dans le courant de son utilisation créé des index "cachés" au fur et à mesure des requêtes.

Un outil comme Power Designer, créé automatiquement les index sous jacent au clefs étrangères...

A +

Patrice a écrit:
Bonjour Fred,

Veux tu dire que la mise en place de l'intégrité référentielle crée
automatiquement un index sur les clés étrangères ? Il ne me semblait pas que
ce soit le cas. (A moins que tu veuilles dire que l'on peut s'attendre à ce
que le concepteur de la base crée des index sur ses FKs ?)

Peux tu confirmer ou non pour la création automatique ? Merci d'avance.

"Fred BROUARD" a écrit dans le message de
news:

en général oui... Simplement parce que la mise en place d'une IR implique



:

1) indexation des clefs primaire
2) indexation des clefs étrangères
3) empêche la pollution des données dans les colonnes de l'IR

donc un travail plus simple pour le moteur SQL !

A +

SSO a écrit:

Bonjour,

Je voudrais savoir si le fait de mettre des références
d'intégrité entre 2 tables accélère le temps de réponse
des requêtes portant sur ces tables?

Merci





--
Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************









--
Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************