Data.DB.TAutoIncField.Create

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

constructor Create(AOwner: TComponent); override;

C++

__fastcall virtual TAutoIncField(System::Classes::TComponent* AOwner);

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
constructor public
Data.DB.pas
Data.DB.hpp
Data.DB TAutoIncField

Beschreibung

Erstellt eine Instanz von TAutoIncField.

Die meisten Anwendungen erzeugen keine expliziten Instanzen von TAutoIncField. Vielmehr werden die Feldomponenten automatisch erzeugt, und zwar entweder als vom Felder-Editor beim Entwurf definierte persistente Feldkomponenten oder als von der Datenmenge automatisch erzeugte dynamische Feldkomponenten.

Nach dem Aufruf des geerbten Konstruktors wird mit Create die Eigenschaft DataType auf ftAutoInc gesetzt. Der Parameter AOwner gibt den Eigentümer der Komponente an (meist eine Datenmenge). Der Eigentümer ist für die Freigabe der Komponente verantwortlich.

In den seltenen Fällen, für die das Erzeugen einer persistenten Feldkomponente zur Laufzeit erforderlich ist, rufen Sie Create auf, wenn Sie eine Instanz von TAutoIncField erstellen und initialisieren wollen. Weisen Sie der Komponente nach dem Erstellen das gewünschte Feld mit der Eigenschaft FieldName zu. Geben Sie der Komponente mit der Eigenschaft Name einen eindeutigen Namen. Der Eigenschaft Index weisen Sie die Position des Feldes in der Feldkollektion der Datenmenge zu. Weisen Sie der Eigenschaft DataSet den Namen der Datenmengenkomponente zu.

Das folgende Beispiel erzeugt ein TAutoIncField-Objekt für ein Feld mit dem Namen ID, auf das mit der TSQLQuery-Komponente SQLQuery1 zugegriffen werden kann.



var
T: TAutoIncField;
begin
SQLQuery1.Close;
T := TAutoIncField.Create(SQLQuery1);
T.FieldName := 'ID';
T.Name := SQLQuery1.Name + T.FieldName;
T.Index := SQLQuery1.FieldCount;
T.DataSet := SQLQuery1;
SQLQuery1.FieldDefs.UpDate;
SQLQuery1.Open;
end;



TAutoIncField *T;
SQLQuery1->Close();
T = new TAutoIncField(SQLQuery1);
T->FieldName = "ID";
T->Name = SQLQuery1->Name + T->FieldName;
T->Index = SQLQuery1->FieldCount;
T->DataSet = SQLQuery1;
SQLQuery1->FieldDefs->UpDate();
SQLQuery1->Open();



Siehe auch