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

📄 mysqlcommon.pas

📁 通过Tmysql来访问MSQL Server数据库的应用案例.
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  PrepareDeleteStringTask(Table,Condition,TaskName,FDefault_OnComplete,FDefault_OnError);
end;

// ---------------

procedure TmySQLClientModify._OnComplete(Sender : TObject; Data : TObject);
var
  FTaskOnComplete : TmySQLClientTask_OnComplete;
begin
  FCurrentTaskData:=TmySQLClientTaskData(Data);
  if FCurrentTaskData=nil then exit;
  FTaskOnComplete:=FCurrentTaskData.FTaskOnComplete;

  FCurrentTaskData.Free;

  if Assigned(FTaskOnComplete) then
    FTaskOnComplete(Self);
end;

procedure TmySQLClientModify._OnError(Sender: TObject; Data: TObject; Msg: string);
var
  FTaskOnError : TmySQLClientTask_OnError;
begin
  FCurrentTaskData:=TmySQLClientTaskData(Data);
  if FCurrentTaskData=nil then exit;
  FTaskOnError:=FCurrentTaskData.FTaskOnError;

  FCurrentTaskData.Free;

  if Assigned(FTaskOnError) then
    FTaskOnError(Self,Msg);
end;

//----------------------------------------------------------------------------
//----------------------------------------------------------------------------

constructor TmySQLClientUtility.Create;
begin
  inherited;

  FTaskHandler                 :=nil;
  FCurrentTaskData             :=nil;

  Default_OnSelectDatabase     :=nil;
  Default_OnSelectDatabaseError:=nil;

  Default_OnCreateDatabase     :=nil;
  Default_OnCreateDatabaseError:=nil;

  Default_OnDropDatabase       :=nil;
  Default_OnDropDatabaseError  :=nil;

  Default_OnListDatabases      :=nil;
  Default_OnListDatabasesError :=nil;

  Default_OnListTables         :=nil;
  Default_OnListTablesError    :=nil;

  Default_OnListFields         :=nil;
  Default_OnListFieldsError    :=nil;

  Default_OnListProcesses      :=nil;
  Default_OnListProcessesError :=nil;

  Default_OnPing               :=nil;
  Default_OnPingError          :=nil;

  Default_OnShutdown           :=nil;
  Default_OnShutdownError      :=nil;

  Default_OnKill               :=nil;
  Default_OnKillError          :=nil;

  Default_OnOptions            :=nil;
  Default_OnOptionsError       :=nil;

  Default_OnRefresh            :=nil;
  Default_OnRefreshError       :=nil;
end;

destructor TmySQLClientUtility.Destroy;
begin
  inherited;
end;

procedure TmySQLClientUtility._OnComplete(Sender: TObject; Data: TObject);
var
  FTaskOnComplete : TmySQLClientTask_OnComplete;
begin
  FCurrentTaskData:=TmySQLClientTaskData(Data);
  if FCurrentTaskData=nil then exit;

  FTaskOnComplete:=FCurrentTaskData.FTaskOnComplete;

  FCurrentTaskData.Free;

  if Assigned(FTaskOnComplete) then
    FTaskOnComplete(Self);
end;

procedure TmySQLClientUtility._OnError(Sender: TObject; Data: TObject; Msg: string);
var
  FTaskOnError : TmySQLClientTask_OnError;
begin
  FCurrentTaskData:=TmySQLClientTaskData(Data);
  if FCurrentTaskData=nil then exit;

  FTaskOnError:=FCurrentTaskData.FTaskOnError;

  FCurrentTaskData.Free;

  if Assigned(FTaskOnError) then
    FTaskOnError(Self,Msg);
end;

procedure TmySQLClientUtility.PrepareConnectTask(
  const host, user, passwd, db: pchar;
  port: Cardinal; unix_socket: PChar; clientflag: Cardinal;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_real_connect(
    PChar(host),
    PChar(user),
    PChar(passwd),
    PChar(db),
    port,nil,clientflag,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareCloseTask(
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_close(
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareSelectDatabase(
  db : pchar;
  const TaskName : string
);
begin
  PrepareSelectDatabaseTask(
    db,
    TaskName,
    Default_OnSelectDatabase,
    Default_OnSelectDatabaseError
  );
end;

procedure TmySQLClientUtility.PrepareSelectDatabaseTask(
  db : pchar;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_db(
    task_mysql_select_db,
    db,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareCreateDatabase(
  db : pchar;
  const TaskName : string
);
begin
  PrepareCreateDatabaseTask(
    db,
    TaskName,
    Default_OnCreateDatabase,
    Default_OnCreateDatabaseError
  );
end;

procedure TmySQLClientUtility.PrepareCreateDatabaseTask(
  db : pchar;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_db(
    task_mysql_create_db,
    db,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareDropDatabase(
  db : pchar;
  const TaskName : string
);
begin
  PrepareDropDatabaseTask(
    db,
    TaskName,
    Default_OnDropDatabase,
    Default_OnDropDatabaseError
  );
end;

procedure TmySQLClientUtility.PrepareDropDatabaseTask(
  db : pchar;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_db(
    task_mysql_drop_db,
    db,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareListDatabases(
  Wild : pchar;
  const TaskName : string
);
begin
  PrepareListDatabasesTask(
    Wild,
    TaskName,
    Default_OnListDatabases,
    Default_OnListDatabasesError
  );
end;

procedure TmySQLClientUtility.PrepareListDatabasesTask(
  Wild : pchar;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_list(
    task_mysql_list_db,
    Wild,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareListTables(
  Wild : pchar;
  const TaskName : string
);
begin
  PrepareListTablesTask(
    Wild,
    TaskName,
    Default_OnListTables,
    Default_OnListTablesError
  );
end;

procedure TmySQLClientUtility.PrepareListTablesTask(
  Wild : pchar;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_list(
    task_mysql_list_tables,
    Wild,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareListFields(
  TableName : pchar;
  Wild : pchar;
  const TaskName : string
);
begin
  PrepareListFieldsTask(
    TableName,
    Wild,
    TaskName,
    Default_OnListFields,
    Default_OnListFieldsError
  );
end;

procedure TmySQLClientUtility.PrepareListFieldsTask(
  TableName : pchar;
  Wild : pchar;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_list_fields(
    TableName,
    Wild,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareListProcesses(
  const TaskName : string
);
begin
  PrepareListProcessesTask(
    TaskName,
    Default_OnListProcesses,
    Default_OnListProcessesError
  );
end;

procedure TmySQLClientUtility.PrepareListProcessesTask(
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_list_processes(
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PreparePing(
  const TaskName : string
);
begin
  PreparePingTask(
    TaskName,
    Default_OnPing,
    Default_OnPingError
  );
end;

procedure TmySQLClientUtility.PreparePingTask(
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_ping_shutdown(
    task_mysql_ping,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareShutdown(
  const TaskName : string
);
begin
  PrepareShutdownTask(
    TaskName,
    Default_OnShutdown,
    Default_OnShutdownError
  );
end;

procedure TmySQLClientUtility.PrepareShutdownTask(
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_ping_shutdown(
    task_mysql_shutdown,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareKill(
  const pid : integer;
  const TaskName : string
);
begin
  PrepareKillTask(
    pid,
    TaskName,
    Default_OnKill,
    Default_OnKillError
  );
end;

procedure TmySQLClientUtility.PrepareKillTask(
  const pid : integer;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_kill(
    pid,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareOptions(
  const opt: mysql_option; arg: pchar;
  const TaskName : string
);
begin
  PrepareOptionsTask(
    opt,
    arg,
    TaskName,
    Default_OnOptions,
    Default_OnOptionsError
  );
end;

procedure TmySQLClientUtility.PrepareOptionsTask(
  const opt: mysql_option; arg: pchar;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
begin
  FTaskHandler.Thread.Prepare_mysql_options(
    opt,
    arg,
    TaskName,
    _OnComplete,
    _OnError,
    OnComplete,
    OnError
  );
end;

procedure TmySQLClientUtility.PrepareRefresh(
  const RefreshOptions: TSetRefreshOptions;
  const TaskName : string
);
begin
  PrepareRefreshTask(
    RefreshOptions,
    TaskName,
    Default_OnRefresh,
    Default_OnRefreshError
  );
end;

procedure TmySQLClientUtility.PrepareRefreshTask(
  const RefreshOptions: TSetRefreshOptions;
  const TaskName : string;
  OnComplete : TmySQLClientTask_OnComplete;
  OnError    : TmySQLClientTask_OnError
);
var
  Opt : cardinal;
begin
  Opt:=0;

  if (_REFRESH_GRANT  in RefreshOptions) then Opt:=Opt+REFRESH_GRANT;
  if (_REFRESH_LOG    in RefreshOptions) then Opt:=Opt+REFRESH_LOG;
  if (_REFRESH_TABLES in RefreshOptions) then Opt:=Opt+REFRESH_TABLES;
  if (_REFRESH_HOSTS  in RefreshOptions) then Opt:=Opt+REFRESH_HOSTS;
  if (_REFRESH_STATUS  in RefreshOptions) then Opt:=Opt+REFRESH_STATUS;
  if (_REFRESH_THREADS  in RefreshOptions) then Opt:=Opt+REFRESH_THREADS;
  if (_REFRESH_SLAVE  in RefreshOptions) then Opt:=Opt+REFRESH_SLAVE;
  if (_REFRESH_MASTER  in RefreshOptions) then Opt:=Opt+REFRESH_MASTER;

  FTaskHandler.Thread.Prepare_mysql_refresh(
    Opt,
    TaskName,

⌨️ 快捷键说明

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