API:FireDAC.Comp.Client.TFDConnection.OnLogin

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

property OnLogin: TFDConnectionLoginEvent read FOnLogin write FOnLogin;

C++

__property OnLogin;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
event published
FireDAC.Comp.Client.pas
FireDAC.Comp.Client.hpp
FireDAC.Comp.Client TFDConnection

Beschreibung

Wird ausgelöst, wenn eine Anwendung eine Verbindung zu einem DBMS herstellt.

FireDAC.Comp.Client.TFDConnection.OnLogin erbt von FireDAC.Comp.Client.TFDCustomConnection.OnLogin. Der folgende Inhalt bezieht sich auf FireDAC.Comp.Client.TFDCustomConnection.OnLogin.

Wird ausgelöst, wenn eine Anwendung eine Verbindung zu einem DBMS herstellt.

Mit einer OnLogin-Ereignisbehandlungsroutine können Sie spezielle Aktionen ausführen, wenn eine Anwendung versucht, eine Verbindung mit einem DBMS herzustellen.

Ist die Eigenschaft LoginPrompt True, ist eine Anmeldung bei der Datenbank erforderlich. Das Ereignis OnLogin oder ein Anmeldedialogfeld kommt nur vor, wenn die Eigenschaft LoginPrompt True ist. Das Anmeldedialogfeld wird nur angezeigt, wenn die Ereignisbehandlungsroutine OnLogin nicht zugewiesen ist.

Wenn keine OnLogin-Ereignisbehandlungsroutine vorhanden ist, werden User_Name, Password und andere Parameter aus der Eigenschaft Params oder der Verbindungdefinition gelesen, und es wird ein Standarddialogfeld für die Anmeldung geöffnet. In dem Dialogfeld müssen ein Benutzername, Passwort und andere optionale Parameter eingegeben werden. Mit den vom Benutzer eingegebenen Werten werden User_Name, Password und andere optionale Werte in der Eigenschaft Params festgelegt. Anschließend werden diese Werte an das DBMS übergeben.

Die Ereignisbehandlungsroutine für OnLogin erhält die folgenden Parameter:

Anwendungen, die OnLogin-Ereignisbehandlungsroutinen bereitstellen, können Verbindungsparameter füllen oder verändern, wie z. B. AParams.UserName oder AParams.Password. AParams ist ein temporäres Objekt, und wird automatisch freigegeben, wenn es nicht mehr benötigt wird.

Ein mit einer OnLogin-Ereignisbehandlungsroutine oder über ein Standarddialogfeld für die Anmeldung bereitgestelltes Passwort wird nach der Anmeldung aus dem Speicher gelöscht. Ein in BeforeConnect bereitgestelltes Passwort wird nicht gelöscht.

Beispiel

procedure TForm1.FDConnection1Login(AConnection: TFDCustomConnection; AParams: TFDConnectionDefParams);
begin
  AParams.UserName := 'dba';
  AParams.Password := InputBox('Login', 'Please enter DBA password', 'sql');
end;

procedure TForm1.Button1Click(ASender: TObject);
begin
  FDConnection1.OnLogin := FDConnection1Login;
  FDConnection1.LoginPrompt := True;
  FDConnection1.Connected := True;
end;

Siehe auch