23.1.2 Tables indexées
L'indexation des tables de base de données permet à Crystal Reports de retrouver et d'évaluer plus rapidement les données. Certains SGBDR indexent automatiquement les tables de votre base de données, tandis que d'autres imposent une création manuelle. Si vous souhaitez obtenir de bonnes performances lors de la génération des rapports, vérifiez que chaque table est effectivement indexée.
Remarque
Certains SGBDR ne prennent pas en charge les tables indexées. Consultez votre documentation pour savoir si votre SGBDR prend en charge les index, et le cas échéant, comment les créer. Si la documentation de votre
SGBDR ne fait pas référence aux tables indexées, ces dernières ne sont probablement pas prises en charge.
Vous devrez par conséquent relier les tables en fonction de champs communs. L'onglet Liens de l'Expert Base de données permet de déterminer si vos tables contiennent des index.
Les index organisent les enregistrements dans les tables de base de données relationnelles de telle sorte que les données soient plus faciles à rechercher. Prenons l'exemple d'une table contenant les données suivantes :
Guide de l'utilisateur SAP Crystal Reports 2013
Bases de données
©
2014 SAP AG ou société affiliée SAP. Tous droits réservés.
509
ID commande
10444
10470
10485
10488
10495
10501
10511
10544
10568
10579
Client
Allez Distribution
BG Mountain Inc.
Sierra Mountain
Mountain Toad
SFB Inc.
La Bomba de Bicicleta
BG Mountain Inc.
Sierra Bicycle Group
Mountain Tops Inc.
Sierra Bicycle Group
Montant
25 141,50
19 164,30
8 233,50
24 580,50
7 911,80
1 956,20
1 683,60
19 766,20
29 759,55
12 763,95
Les informations de cette table sont organisées en fonction du champ ID commande. Ceci ne pose pas de problèmes lorsque vous recherchez des informations dans cette table en fonction du numéro de commande.
Cette méthode ne convient déjà plus, cependant, pour retrouver des informations concernant un client, par exemple.
Supposons que vous souhaitiez retrouver toutes les commandes passées par Sierra Bicycle Group. Le pilote de la base de données examine le premier numéro de commande dans la liste et vérifie s'il correspond effectivement à une commande émanant de cette société. Si ce n'est pas le cas, il passe à l'enregistrement suivant et compare le nom du client à celui que vous avez entré dans votre requête. A chaque fois qu'il existe une concordance, le moteur extrait les informations et passe au numéro de commande suivant. Avec cette technique, l'ensemble des champs ID commande et Client de la table doit être lu. Ceci demande un certain temps et des ressources informatiques importantes lorsqu'une table comporte des milliers, voire des millions d'enregistrements.
Pour résoudre ce problème, indexez la table en fonction du champ Client. Ce type d'index peut se présenter de la façon suivante :
Client
Allez Distribution
BG Mountain Inc.
BG Mountain Inc.
La Bomba de Bicicleta
Mountain Toad
Mountain Tops Inc.
Pointeur vers ID commande
10444
10470
10511
10501
10488
10568
510
©
2014 SAP AG ou société affiliée SAP. Tous droits réservés.
Guide de l'utilisateur SAP Crystal Reports 2013
Bases de données

Enlace público actualizado
El enlace público a tu chat ha sido actualizado.