关闭

技术类3(delphi)

344人阅读 评论(0) 收藏 举报

unit USysDbSet;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, ExtCtrls,UdmHr;

type
  TfrmSysDbSet = class(TForm)
    ledtDbName: TLabeledEdit;
    bbtnOk: TBitBtn;
    bbtnExit: TBitBtn;
    bbtnTest: TBitBtn;
    gbInfor: TGroupBox;
    lblDbName: TLabel;
    cbDbName: TComboBox;
    ledtServerName: TLabeledEdit;
    procedure bbtnTestClick(Sender: TObject);
  private
    { Private declarations }
    mdlServerName, mdlDbName,mdlCnnStr :string;
    function TestConn():boolean;
    function buildCnnStr():string;
  public
    { Public declarations }
  end;

var
  frmSysDbSet: TfrmSysDbSet;

implementation

{$R *.dfm}

function TfrmSysDbSet.buildCnnStr: string;
begin
  //ServerName, DbName
  if (Trim(mdlServerName)='') then
    begin
      showmessage('服务器名没有设置,请先设置好相关参数再试!');
      Result:='';
      exit;
    end;
  if (Trim(mdlDbName)='')  then
    begin
      showmessage('数据库名称没有设置,请先设置好相关参数再试!');
      Result:='';
      exit;
    end;
    //此处用sa用户,实际应用时,可建立安全用户  ??
     Result:='Provider=SQLOLEDB.1;Persist Security Info=False;Server='+ Trim(mdlServerName)+';User ID=sa;Password=123456;' +';Database='+Trim(mdlDbName);
end;

function TfrmSysDbSet.TestConn(): boolean;
begin
  if Trim(mdlCnnStr)='' then mdlCnnStr:=buildCnnStr;
  if Trim(mdlCnnStr)='' then exit;        //如果串为空,则退出
  try
    with dmHr do
    begin
      if adoCnnHr.Connected then adoCnnHr.Close ;
      adoCnnHr.ConnectionString :=mdlCnnStr;
      adoCnnHr.Open ;
    end;
    showmessage('数据库连接成功!');
    Result:=true;
  except
    showmessage('数据库连接失败,请重试!');
    Result:=false;
  end;//try
 
end;

procedure TfrmSysDbSet.bbtnTestClick(Sender: TObject);
begin
    //参数设置
    mdlServerName :=Trim(ledtServerName.Text);
    mdlDbName     :=Trim(cbDbName.Text);

    TestConn;
end;

end.
 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:57728次
    • 积分:1018
    • 等级:
    • 排名:千里之外
    • 原创:45篇
    • 转载:0篇
    • 译文:0篇
    • 评论:7条