⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 udata.pas

📁 Crlab公司用来连接MySQL数据库的控件
💻 PAS
字号:
unit uData;

interface

uses
  SysUtils, Classes, DB, DBAccess, MyAccess, MemData;

type
  TDM = class(TDataModule)
    Connection: TMyConnection;
    procedure ConnectionConnectionLost(Sender: TObject; Component: TComponent;
      ConnLostCause: TConnLostCause; var RetryMode: TRetryMode);
    procedure ConnectionBeforeConnect(Sender: TObject);
    procedure ConnectionAfterConnect(Sender: TObject);
    procedure ConnectionAfterDisconnect(Sender: TObject);
  end;

implementation

{$R *.dfm}

uses IWInit, ServerController;

{ TDM }

procedure TDM.ConnectionBeforeConnect(Sender: TObject);
begin
  Connection.Username := UserSession.Username;
  Connection.Password := UserSession.Password;
  Connection.Server := UserSession.Server;
  Connection.Database := UserSession.Database;
  Connection.Options.DisconnectedMode := UserSession.DisconnectedMode;
  Connection.Pooling := UserSession.Pooling;
  Connection.PoolingOptions := UserSession.PoolingOptions;
  if UserSession.FailOver then
    Connection.OnConnectionLost := ConnectionConnectionLost
  else
    Connection.OnConnectionLost := nil;
end;

procedure TDM.ConnectionAfterConnect(Sender: TObject);
begin
  UserSession.IsGoodConnection := True;
  UserSession.ConnectionResult := 'Connected';
end;

procedure TDM.ConnectionAfterDisconnect(Sender: TObject);
begin
  if not (csDestroying in Connection.ComponentState) then
    UserSession.ConnectionResult := '';
end;

procedure TDM.ConnectionConnectionLost(Sender: TObject; Component: TComponent;
  ConnLostCause: TConnLostCause; var RetryMode: TRetryMode);
var
  Msg: string;
begin
  UserSession.IsGoodConnection := False;
  case ConnLostCause of
    clUnknown:
      Msg := 'Unknown';
    clConnect:
      Msg := 'Connect';
    clExecute:
      Msg := 'Execute';
    clOpen:
      Msg := 'Open';
    clApply:
      Msg := 'Apply';
  end;
  UserSession.ConnectionResult := 'Connection lost: ' +
    Component.Name + ' - ' + Msg;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -