FireDAC.Comp.DataSet.TFDDataSet.KeyFieldCount
Delphi
property KeyFieldCount: Integer read GetKeyFieldCount write SetKeyFieldCount;
C++
__property int KeyFieldCount = {read=GetKeyFieldCount, write=SetKeyFieldCount, nodefault};
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
property | public | FireDAC.Comp.DataSet.pas FireDAC.Comp.DataSet.hpp |
FireDAC.Comp.DataSet | TFDDataSet |
Description
Contrôle le nombre de valeurs de champs indexés à utiliser pour la recherche de clés ou la configuration de l'étendue.
Utilisez KeyFieldCount pour obtenir ou définir le nombre de valeurs de champs indexés à utiliser pour la recherche de clés ou la configuration de l'étendue. La valeur par défaut est "tous les champs indexés".
Le KeyFieldCount doit être inférieur ou égal au nombre de champs indexés (IndexFieldCount). Si spécifié, FireDAC utilise les premiers KeyFieldCount champs indexés pour la recherche, au lieu de IndexFieldCount champs. La définition de KeyFieldCount est seulement possible dans dsSetKeyMode
.
La propriété a une signification seulement pour les index non expressionnels.
Exemple
//Example 1
FDQuery1.IndexFieldNames := 'EmployeeID;CustomerID;SellDate';
FDQuery1.SetKey;
FDQuery1.KeyFieldCount := 2;
FDQuery1.FieldByName('EmployeeID').AsInteger := 100;
FDQuery1.FieldByName('CustomerID').AsInteger := 200;
FDQuery1.GotoKey;
//Example 2
FDQuery1.IndexFieldNames := 'EmployeeID;CustomerID;SellDate';
FDQuery1.SetRangeStart;
FDQuery1.KeyFieldCount := 1;
FDQuery1.FieldByName('EmployeeID').AsInteger := 100;
FDQuery1.SetRangeEnd;
FDQuery1.KeyFieldCount := 1;
FDQuery1.FieldByName('EmployeeID').AsInteger := 100;
FDQuery1.ApplyRange;