FireDAC.Phys.MongoDBDataSet.TFDMongoDataSet.Constraints

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

property Constraints: TCheckConstraints read FConstraints write SetConstraints stored IsCS;

C++

__property Constraints;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
property published
FireDAC.Phys.MongoDBDataSet.pas
FireDAC.Phys.MongoDBDataSet.hpp
FireDAC.Phys.MongoDBDataSet TFDMongoDataSet

Beschreibung

Mit Constraints verwalten Sie Beschränkungen auf Datensatzebene für die Datenmenge.

FireDAC.Phys.MongoDBDataSet.TFDMongoDataSet.Constraints erbt von FireDAC.Comp.DataSet.TFDDataSet.Constraints. Der folgende Inhalt bezieht sich auf FireDAC.Comp.DataSet.TFDDataSet.Constraints.

Mit Constraints verwalten Sie Beschränkungen auf Datensatzebene für die Datenmenge.

Beschränkungen auf Datensatzebene unterstützen Geschäftsregeln durch Begrenzung auf nur einige Felder in einem einzelnen Datensatz. Die Beschränkungen (Constraints) werden bei Beendigung der Datenbearbeitung mit der Methode Post, AppendRecord oder InsertRecord überprüft. Beschränkungen (Constraints), die den Wert eines einzelnen Feldes begrenzen, können mit der Eigenschaft CustomConstraint oder ImportedConstraint angegeben werden.

Die Beschränkungen (Constraints) werden nur angewendet, wenn sie vor dem Öffnen der Tabelle definiert wurden.

Die Überprüfung der Bedingungen (Constraints) wird durchgeführt, wenn die Eigenschaft ConstraintsEnabled True ist. Setzen Sie die Eigenschaft ConstraintsEnabled auf False, wenn in der Anwendung große Aktualisierungen der Datenmenge ausgeführt werden müssen und die Anwendung die Datenkonsistenz sicherstellen kann. Sie können den Originalwert nach Abschluss der Aktualisierungen wiederherstellen. Beim Datenabruf werden die Beschränkungen (Constraints) nicht überprüft.

Die Ausdrücke in den Beschränkungen (Constraints) müssen Prädikate sein, die zu booleschen Werten ausgewertet werden. FireDAC unterstützt eine Ausdruckssyntax, die mit Folgendem kompatibel ist:

  • Client-Datenmenge
  • Oracle 8 (nicht zu 100 %)

Einzelheiten zur Ausdruckssyntax finden Sie unter Erstellen von Ausdrücken.

Beispiel

with FDQuery1.Constraints.Add do begin
	CustomConstraint:='sal + bonus <= 2000';
	ErrorMessage:='The employee payments must be equal or less than 2000 usd';
end;
FDQuery1.ConstraintsEnabled:=true;

FDQuery1.Open();
	//Abfrage nach der Definition der Beschränkungen öffnen
try
  FDQuery1.FieldByName('sal').AsFloat := 1800;
  FDQuery1.FieldByName('bonus').AsFloat := 300;
  FDQuery1.Post;
except
  FDQuery1.Cancel;
  Application.HandleException(Self);
end;

Siehe auch