【Delphi】ADOConnection连接数据库、ADOQuery执行SQL语句、StringGrid填充数据集

本文介绍了如何在Delphi中使用ADOConnection和ADOQuery控件连接SQL Server数据库,执行SQL语句,并将数据填充到StringGrid中。详细步骤包括配置数据库连接字符串、编写代码连接数据库以及在Button事件中填充StringGrid,同时讨论了自定义表头和列数的两种方法及其优缺点。
摘要由CSDN通过智能技术生成

即:先用ADOConnection连接数据库,再用ADOQuery执行SQL语句,最后将返回的数据集填充到StringGrid
这样就获得了一张所需的数据表格。


一、环境

Windows10
RAD Studio 10 Seattle
SQL Server 2014 Management Studio


二、连接数据库


1、手动配置ADOConnection和ADOQuery连接数据库

①创建一个工程

File——New——VCLForms Application
创建一个工程,才能运行相应的form
在这里插入图片描述

②Form 中添加ADOConnection和ADOQuery控件

Tool Palette中搜索ADOConnection和ADOQuery
在这里插入图片描述

③双击ADOConnection配置数据库
  • use connection string——build——提供程序——Microsoft OLE DB Provider for SQL Server

在这里插入图片描述

④ADOConnection配置数据库连接
  • 本地连接的设置

在这里插入图片描述

  • 服务器连接的设置
    如果连接的数据库不是本地库,则在服务器名称处填写【服务器名称/服务器IP】
    在这里插入图片描述
⑤ADOConnection数据库连接的字符串

我的主要是以链接本地数据库为例

Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=SQLTEST;Data Source=localhost
在这里插入图片描述

⑥将ADOQuery与ADOConnection关联起来

在这里插入图片描述


2、Form中写代码连接数据库

①创建工程和控件选择的方法和上面一样

不要手动配置连接

②在Form中添加一个Button

按钮用来测试连接语句是否已经成功链接本地数据库
在这里插入图片描述

③双击进入Button控件编写事件

procedure TForm1.Button1Click(Sender: TObject);
begin

    //ADOConnection1.ConnectionString := 'Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=SQLTEST;Data Source=localhost';//这段链接字符串就是上面手动配置时生成的
    ADOConnection1.ConnectionString := 'Provider=SQLOLEDB.1;Password=123456;Persist Security Info=True;User ID=sa;Initial Catalog=SQLTEST;Data Source=localhost';//这段是用非win账户链接数据库

    try
          ADOConnection1.Open;
          ShowMessage('数据库连接成功');
    except
        ShowMessage('数据库未连接成功');
    end;

end;

④运行Form

快捷键:Shift+Ctrl+F9
在这里插入图片描述

⑤检测结果

点击Button1
在这里插入图片描述


三、StringGrid的数据填充

上面数据库连接成功后,就可以从数据库中取数出来填充到StringGrid控件中


1、Form中添加TStringGrid

可以看到,Grid里现在已有5行5列,这是因为在属性这边的ColCount=

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值