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

📄 dbmgr.~pas

📁 指纹保管箱查询系统(delphi数据库编程)
💻 ~PAS
字号:
{-----------------------------------------------------------------------------
 Unit Name: DbMgr
 Author:    mxm
 Purpose:   Database Manager for HYDBOX
 History:   2006.01.19 create
-----------------------------------------------------------------------------}

unit DbMgr;

interface

uses
  Windows, Messages, Forms,SysUtils, Classes, AdoDB, Controls, ComCtrls, ExtCtrls,
  Dialogs, StdCtrls,Inifiles;
type  
  TDBManager = class (TObject)
  private
    FAdoConnHyd:TAdoConnection;
    //FAdoConnMain:TAdoConnection;
    FQueryMain:TAdoQuery;
    FQuery:TAdoQuery;
    FADOQuery:TADOQuery;
  protected
  public
    constructor Create();
    destructor Destroy();override;
    Function Initialize():Boolean;
    procedure Finalize();
    property AdoConnHyd:TAdoConnection read FAdoConnHyd;
    //property AdoConnMain:TAdoConnection read FAdoConnMain;
    property Query:TAdoQuery read FQuery;
    property QueryMain:TAdoQuery read FQueryMain;
    property ADOQuery:TAdoQuery read FADOQuery;
  public
    Function GetCodeName(nID:Integer;TblName:String):String;
    Function GetCodeExtra(nID:Integer;TblName:String):String;
    Function AddCmbItem(TblName:String;Combobox :TComboBox): Boolean;
  end;

var
  GDBManager:TDBManager;
  ParaIni: TInifile;

implementation

  
{ TDBManager }



Function TDBManager.GetCodeName(nID:Integer;TblName:String):String;
var
  StrSql:String;
begin
  Result:='';
  Try
    ADOQuery.SQL.Clear ;
    StrSql:=Format('select * from %s where Bs=''%s''',[TblName,Format('%.2d',[nID])]);
    ADOQuery.SQL.Add(StrSql);
    ADOQuery.Open;
    ADOQuery.ExecSQL;
    if ADOQuery.RecordCount>=0 then begin
       Result:=ADOQuery.FieldByName('iName').AsString;
    end;
  finally
    ADOQuery.Close;
  end;  
end;

Function TDBManager.GetCodeExtra(nID:Integer;TblName:String):String;
var
  StrSql:String;
begin
  Result:='';
  Try
    ADOQuery.SQL.Clear ;
    StrSql:=Format('select * from %s where Bs=''%s''',[TblName,Format('%.2d',[nID])]);
    ADOQuery.SQL.Add(StrSql);
    ADOQuery.Open;
    ADOQuery.ExecSQL;
    if ADOQuery.RecordCount>=0 then begin
       Result:=ADOQuery.FieldByName('Extra').AsString;
    end;
  finally
    ADOQuery.Close;
  end;  
end;

Function TDBManager.AddCmbItem(TblName:String;Combobox :TComboBox): Boolean;
var
  StrSql:String;
begin
  Result:=True;
  Try
    ADOQuery.SQL.Clear ;
    StrSql:=Format('select * from %s where iValidate=1 Order by ID',[TblName]);
    ADOQuery.SQL.Add(StrSql);
    ADOQuery.Open;
    ADOQuery.ExecSQL;
    while not ADOQuery.Eof do begin
       Combobox.Items.Add(ADOQuery.FieldByName('iName').AsString);
       ADOQuery.Next;
    end;
    if Combobox.Items.Count>0 then begin
       Combobox.ItemIndex:=0;
    end;
  finally
    ADOQuery.Close;
  end;  
end;

constructor TDBManager.Create();
begin
  inherited Create();
  FAdoConnHyd:=TAdoConnection.Create(nil);
  //FAdoConnMain:=TAdoConnection.Create(nil);
  FQuery:=TAdoQuery.Create(nil);
  FQueryMain:=TAdoQuery.Create(nil);
  FADOQuery:=TAdoQuery.Create(nil);
end;

destructor TDBManager.Destroy();
begin
  if Assigned(FQuery) then begin
    FreeAndNil(FQuery);
  end;
  if Assigned(ADOQuery) then begin
    FreeAndNil(FADOQuery);
  end;
  if Assigned(FAdoConnHyd) then begin
    FreeAndNil(FAdoConnHyd);
  end;
   if Assigned(FQueryMain) then begin
    FreeAndNil(FQueryMain);
  end;
  {if Assigned(FAdoConnMain) then begin
    FreeAndNil(FAdoConnMain);
  end;}
  inherited Destroy();
end;

Function TDBManager.Initialize():Boolean;
var
    S : String;
    DbServerName:String;
begin
  ParaIni := TInifile.Create(ExtractFilePath(ParamStr(0))+'\dbs\Config.ini');
  DbServerName := ParaIni.ReadString('DBS','ServerName','127.0.0.1');
  S:=Format('Provider=SQLOLEDB.1;Password=mxm0130;Persist Security Info=True;User ID=dbHyd;Initial Catalog=%s;Connect Timeout=10;Data Source=%s',
      ['dbHyd',DbServerName]);
  FAdoConnHyd.ConnectionString:=S;
  FAdoConnHyd.LoginPrompt:=false;
  
  FAdoConnHyd.Open;
  FQuery.Connection:=FAdoConnHyd;
  ADOQuery.Connection:=FAdoConnHyd;
  FQueryMain.Connection:=FAdoConnHyd;
  Result:=True;
end;

procedure TDBManager.Finalize();
begin
  FAdoConnHyd.Close;
end;
end.

⌨️ 快捷键说明

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