【Delphi-ADO】Delphi读取INI连接数据库远程操作数据库

  1. unit Unit1;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5.   Dialogs, StdCtrls,IniFiles, Grids, DBGrids, Mask, DBCtrls;
  6. type
  7.   TForm1 = class(TForm)
  8.     Button1: TButton;
  9.     DBGrid1: TDBGrid;
  10.     DBEdit1: TDBEdit;
  11.     DBEdit2: TDBEdit;
  12.     DBEdit3: TDBEdit;
  13.     Button2: TButton;
  14.     Button3: TButton;
  15.     Label1: TLabel;
  16.     Label2: TLabel;
  17.     Label3: TLabel;
  18.     procedure Button1Click(Sender: TObject);
  19.     procedure Button2Click(Sender: TObject);
  20.     procedure Button3Click(Sender: TObject);
  21.   private
  22.     { Private declarations }
  23.   public
  24.  //  procedure   InitCnn();   
  25.     { Public declarations }
  26.   end;
  27. var
  28.   Form1: TForm1;
  29. implementation
  30. uses  UDM2;
  31. {$R *.dfm}
  32. procedure InitCnn();
  33.   var   
  34.       strCnn: WideString;
  35.       iniFile: TIniFile;
  36.       strDatabase,strDataServer,strUserID,strPW:string;
  37.       strTemp:   string;
  38.   begin
  39.         strTemp := ExtractFilePath(paramstr(0))+'data/cnn.ini';
  40.      //    showmessage(strTemp);
  41.       try   
  42.           iniFile :=   TIniFile.Create(strTemp);
  43.           strDataServer := iniFile.ReadString('Server''DataServer','');
  44.           strDatabase := iniFile.ReadString('Server''Database','');
  45.           strUserID := iniFile.ReadString('Server''UserID','');
  46.           strPW := iniFile.ReadString('Server''Password','');
  47.        //   showmessage(strDataServer);
  48.        //   showmessage(strDatabase);
  49.       //    showmessage(strUserID);
  50.       //    showmessage(strPW);
  51.   //Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=Test;Data Source=.
  52.       finally
  53.           iniFile.Free;   
  54.       end;
  55.       {*
  56.       strCnn := 'Provider=SQLOLEDB.1;Password=' + strPW;
  57.       strCnn := strCnn + ';Persist Security Info=True;User ID=';
  58.       strCnn := strCnn + strUserID;
  59.       strCnn := strCnn + ';Initial Catalog=' + strDatabase;
  60.       strCnn := strCnn + ';DataSource=' + strDataServer;
  61.       *}
  62.       strCnn := 'Provider=SQLOLEDB.1;Persist Security Info=False;Password='+strPW+';User ID='+strUserID+';Initial Catalog='+strDatabase+';Data Source='+strDataServer;
  63.       try
  64.           with   DM.MainCnn   do
  65.           begin   
  66.               Connected := False;
  67.               ConnectionString := strCnn;
  68.               Connected := True;
  69.               showmessage('数据库连接成功~');
  70.               
  71.           end;
  72.       except   
  73.           MessageBox(0,   '连接数据库失败'#13'请确认数据库程序是否启动',   '系统提示',
  74.               MB_ICONERROR);
  75.           Halt(0);
  76.       end;   
  77.   end;
  78. procedure TForm1.Button1Click(Sender: TObject);
  79. begin
  80.    InitCnn();
  81.   with DM.ADOQuery1 do
  82.     begin
  83.      DM.ADOQuery1.SQL.Clear;
  84.      DM.ADOQuery1.SQL.Add('select * from jobs');
  85.      DM.ADOQuery1.Active:=true;
  86.      DBGrid1.DataSource := DM.DataSource1;
  87.      DM.ADOQuery1.Open;
  88. end;
  89.    
  90. end;
  91. procedure TForm1.Button2Click(Sender: TObject);
  92. begin
  93. InitCnn();
  94. with DM.ADOQuery1 do
  95. begin
  96. DM.ADOQuery1.SQL.Clear;
  97. DM.ADOQuery1.SQL.Add('select * from jobs');
  98. DM.ADOQuery1.Active:=true;
  99. DBEdit1.DataSource := DM.DataSource1;
  100. DBEdit1.DataField := 'job_desc';
  101. DBEdit2.DataSource := DM.DataSource1;
  102. DBEdit2.DataField := 'min_lvl';
  103. DBEdit3.DataSource := DM.DataSource1;
  104. DBEdit3.DataField := 'max_lvl';
  105. DM.ADOQuery1.Append;
  106. DM.ADOQuery1.Open;
  107. Button3.Enabled:=true;
  108. end;
  109. end;
  110. procedure TForm1.Button3Click(Sender: TObject);
  111. begin
  112. //InitCnn();
  113. //with DM.ADOQuery1 do
  114. //begin
  115. //DM.ADOQuery1.SQL.Clear;
  116. //DM.ADOQuery1.SQL.Add('select * from jobs');
  117. //DM.ADOQuery1.Active:=true;
  118. //DBEdit1.DataSource := DM.DataSource1;
  119. //DBEdit1.DataField := 'job_desc';
  120. //DBEdit2.DataSource := DM.DataSource1;
  121. //DBEdit2.DataField := 'min_lvl';
  122. //DBEdit3.DataSource := DM.DataSource1;
  123. //DBEdit3.DataField := 'max_lvl';
  124. DM.ADOQuery1.Post;
  125. //DM.ADOQuery1.Open;
  126. //end;
  127. Button3.Enabled:=false;
  128. end;
  129. end.
  1. ini文件
  2. [Server]   
  3. DataServer=192.168.66.100             
  4. Database=pubs   
  5. UserID=sa   
  6. Password=   
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值