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

📄 untopensql.pas

📁 车辆管理系统
💻 PAS
字号:
unit untOpenSql;

interface

uses
  sysUtils, ADODB, Windows;

type
  TopensqlEvent=procedure(sender:Tobject;qry:Tadoquery) of object;
type
  Topensql = class
  private
    Fadoquery:Tadoquery;
    Fsql:String;
    FopensqlException:Exception;
    FopensqlEvent:TopensqlEvent;
  protected
    procedure opensqlError;
  public
    procedure Execute;
    constructor create(Fadoq:Tadoquery;
                        tmpSql:string);virtual;
    Destructor destroy();override;
    property opensqlEvent:TopensqlEvent read FopensqlEvent write FopensqlEvent;
end;

implementation

{ Topensql }

constructor Topensql.create(Fadoq: Tadoquery;tmpSql: string);
begin
  Fadoquery:=Fadoq;
  Fsql:=Tmpsql;
end;

destructor Topensql.destroy;
begin
  {do nothing};
  inherited;
end;

procedure Topensql.Execute;
var
  CL:TRTLCriticalSection;
begin
try
  InitializeCriticalSection(CL);
  EnterCriticalSection(CL);
  try
    Fadoquery.Close;
    Fadoquery.SQL.Clear;
    Fadoquery.SQL.Add(fsql);
    fadoquery.Open;

    if assigned(FopensqlEvent) then
      begin
        FopensqlEvent(self,Fadoquery);
      end;
  Except
    FopensqlException:=Exceptobject as Exception;
    opensqlError;
  end;
finally
LeaveCriticalSection(CL);
end;
end;

procedure Topensql.opensqlError;
begin
  Abort;
end;

end.

⌨️ 快捷键说明

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