首页 > 代码库 > TADOConnection和TADQuery组件连接访问数据库总结

TADOConnection和TADQuery组件连接访问数据库总结

首先先来简单了解一下TADOConnection控件和TADOQuery控件作用,如下图:

技术分享

技术分享

 

好了简单对这两个控件有了一个初步的认识了,下面我们就通过两种形式来进行访问数据库:第一种是通过手动配置不需要写代码来实现;第二种是自己通过代码来连接数据库。

下面先介绍一下第一种方法:

第一步:向Form窗体拖上面的两个控件,一次将起属性Name改为:adoCnt 和adoQry;

第二步:单击TADOQuery控件找到属性:ConnectionString;如图:技术分享点击红色圈出现下一个界面:

技术分享

点击Build... 会弹出下面左边的窗体:

技术分享技术分享

然后选择你需要的数据库,然后点击"下一步" 进入上图右边的对话框:然后一次输入你的服务器名、用户名称、密码信息,输入后你也可以测试一下数据库是否可用。点击测试链接就可以了。

 

第三步:选中TADOQuery控件,找到属性为:Connection ,如图:点击三角找到TADOConnection控件的Name,这样就将这两个控件就关联起来了。

到这里我们就已经配置好链接数据库了。是不是很简单啊。

 

下面讲一下第二种方法:

第一步:和上面的第一步是一样的。

第二步:向Form添加一个按钮:按钮的Caption属性改为:测试;按钮的Name属性改为:btnTest;

第三步:和上面的第三步一样的。

第四步:编写代码,在刚刚添加的测试按钮里写入如下代码:

[delphi] view plain copy
 
 print?
  1. procedure TForm1.btnTestClick(Sender: TObject);  
  2. var  
  3.    user,passwd, server :string;  
  4. begin  
  5.     user   := ‘admin‘;  
  6.     pwd    := ‘123456‘;  
  7.     server := ‘192.168.3.11‘;  
  8.     adoCnt.ConnectionString := ‘Provider=MSDAORA.1;Password=‘ + pwd;  
  9.     adoCnt.ConnectionString := adoCnt.ConnectionString + ‘;User ID=‘ + user;  
  10.     adoCnt.ConnectionString := adoCnt.ConnectionString + ‘;Data Source=‘ + server;  
  11.     adoCnt.ConnectionString := adoCnt.ConnectionString + ‘;Persist Security Info=True‘;  
  12.   
  13.     try  
  14.        adoCnt.Open;  
  15.     except  
  16. ShowMessage(‘数据库连接错误‘);  
  17.     end;  
  18. end;  

下面在简单介绍一下连接好数据库后,我们要读取数据库的数据显示到listview上改怎么实现呢?

首先:选择上面的其中一种方法来连接数据库,当然我比较建议第二种用代码的方式实现。

其次:为Form添加一个listview控件和一个按钮;按钮的Caption属性为:导出数据;Name属性依次为:lvshow和btnexportdata。

然后:在导出数据的按钮中写入下面的代码:

 

[delphi] view plain copy
 
 print?
  1. procedure TForm1.btnexportdataClick(Sender: TObject);  
  2. var  
  3.   items :TListItem;  
  4.   
  5. begin  
  6.   adoQry.SQL.Clear;  
  7.   adoQry.SQL.Add(‘select * from test‘);  
  8.   adoQry.Open;  
  9.   
  10.   while not adoQry.Eof do  
  11.   begin  
  12.     items := lvshow.SubItems.Add;  
  13.     items.SubItems.Add(adoQry.FieldByName(‘std_name‘).AsString);  
  14.     items.SubItems.Add(adoQry.FieldByName(‘std_age‘).AsInteger);  
  15.     items.SubItems.Add(adoQry.FieldByName(‘std_addr‘).AsString);  
  16.     adoQry.Next;  
  17.   end;  
  18. end;  

 

TADOConnection和TADQuery组件连接访问数据库总结