ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:29.25KB ,
资源ID:5505297      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-5505297.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(delphi连接数据库Microsoft Office Word 文档.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

delphi连接数据库Microsoft Office Word 文档.docx

1、delphi连接数据库Microsoft Office Word 文档ADO链接数据库使用ADO连接SQL Server 2000数据库1用ADO组件TADOQuery连接数据库用TADOQuery组件连接数据库需要以下几个步骤:(1)用TADOConnection组件连接数据源(在ConnectionString属性中连接数据库的字符串可以根据需要对其进行相应的省略)。(2)用TADOQuery组件连接数据源,并在SQL属性中输入SQL语句。(3)将TADOQuery组件的Active属性设为True。在SQL属性中可以输入任何形式的SELECT语句,以及INSERT(添加)、UPDATE(

2、修改)和DELETE(删除)语句。下面利用TADOQuery组件来连接数据库“MR_SQL”,并显示“MR_SQL”数据库中“MR_ Student”表的数据,如图1所示。操作步骤如下:(1)运行Delphi,在窗体中添加TADOConnection、TADOQuery、TDataSource和TDBGrid组件。图1用ADO组件TADOQuery连接数据库(2)主要程序代码如下:将下面的代码写入窗体的OnShow(显示)事件中。procedure TForm1.FormShow(Sender: TObject);beginADOConnection1.ConnectionString :=

3、User ID=sa;Initial Catalog=MR_SQL;Data Source=.;Use Procedure for Prepare=1;Auto Translate=True acket Size=4096;Workstation ID=MRDEL; /连接指定的数据库ADOConnection1.LoginPrompt := False;ADOConnection1.Connected := True;ADOQuery1.Connection := ADOConnection1; /连接数据源with ADOQuery1 do /用ADO组件连接数据表beginclose;S

4、QL.Clear;SQL.Add(Select * from MR_Student); /使用SQL语句查询数据表中的内容open;end;ADOQuery1.Active := True;DataSource1.DataSet := ADOQuery1;DBGrid1.DataSource := DataSource1;end;2用ADO组件TADODataSet连接数据库TADODataSet组件允许直接访问数据源、创建一组数据源记录以及查询结果记录集。TADODataSet组件可以从一个或多个表中取数据。如果只访问一个表,需要指定表的名称;如果要访问多个表,需要使用SQL语句。TADOD

5、ataSet组件与TADOQuery组件的最大区别在于可以使用TADODataSet组件上CommandText属性右边的 按钮,对指定数据库中的所有数据表进行可视化选择并创建SQL语句,如图2所示。图2CommandText属性的编辑器注意:在使用CommandText属性的编辑器时,应先在ConnectionString属性中使用手动连接数据源。下面利用TADODataSet组件来连接数据库“MR_SQL”,并显示“MR_SQL”数据库中“MR_Student”表的数据。操作步骤如下:(1)运行Delphi,在窗体中添加TTADODataSet、TDataSource和TDBGrid组件。

6、(2)主要程序代码如下:将下面的代码写入窗体的OnShow(显示)事件中。procedure TForm1.FormShow(Sender: TObject);beginADODataSet1.ConnectionString := Provider=SQLOLEDB.1 ersist Security Info=False;User ID=sa;Initial Catalog=MR_SQL;Data Source=.; /连接数据源ADODataSet1.CommandText := select * from MR_Student; /用SQL语句查询数据表信息ADODataSet1.Ac

7、tive := True; /运行该组件end;3用ADO组件TADOTable连接数据库TADOTable(也称为ADO数据表)组件是一个数据集组件,封装了一个可访问ADO的数据表,使用TADOTable组件可访问单个数据表中的数据,它可以直接访问数据表中的每条记录,也可以用Filter属性根据限定范围或条件对数据表中的信息进行过滤。TADOTable组件也可以通过TableName属性对数据库中的数据表进行可视化选择。注意:在用TableName属性进行可视化选择时,应先在ConnectionString属性中使用手动连接数据源。下面是利用TADOTable组件来连接数据库“MR_SQL”

8、,并显示“MR_SQL”数据库中“MR_Student”表的数据。操作步骤如下:(1)运行Delphi,在窗体中添加TADOTable、TDataSource和TDBGrid组件。(2)主要程序代码如下:将下面的代码写入窗体的OnShow(显示)事件中。procedure TForm1.FormShow(Sender: TObject);beginADOTable1.ConnectionString := Provider=SQLOLEDB.1 ersist Security Info=False;User ID=sa;Initial Catalog=MR_SQL;Data Source=.;

9、ADOTable1.TableName := MR_Student;ADOTable1.Filtered := True;end;4用ADO组件TADOCommand连接数据库TADOCommand组件主要用来对数据源执行指定的命令,比如SQL语句,表和存储过程的名称,对数据进行添加、修改、删除等操作。虽然其他ADO组体也能执行以上操作,但需要使用Command本身的属性和方法来控制数据源,使用TADOCommand组件就方便得多。在用TADOCommand组件对数据进行编辑时,应在Parameters属性中创建变量,这些变量应与编辑字段的类型相一致,如果在SQL语句后面没有WHERE子句,则

10、对整个表进行编辑。下面利用TADOCommand组件来连接数据库“MR_SQL”,并对“MR_Student”表中的“数学”字段进行修改。操作步骤如下:(1)运行Delphi,在窗体中添加TADOTable、TEdit和TButton组件。(2)主要程序代码如下:在Button1按钮的单击事件中写入以下代码。procedure TForm1.Button1Click(Sender: TObject);beginADOCommand1.ConnectionString := Provider=SQLOLEDB.1 ersist Security Info=False;User ID=sa;Ini

11、tial Catalog=MR_SQL;Data Source=.; /连接数据源/用SQL语句UPDATE修改MR_Student表中第一条记录的“数学”字段信息ADOCommand1.CommandText:=UPDATE MR_Student SET 数学 = 数学 + :aa where 编号=1;/在TADOCommand组件中设置变量,并通过该变量获取修改值ADOCommand1.Parameters.ParamByName(aa).Value := StrtOInt(edit1.Text);ADOCommand1.Execute; /执行修改操作end; Delphi链接数据库方

12、法Delphi数据库处理组件BDE、ADO、InterBase和dbExpress详细说明第一节 BDE、ADO、InterBase和dbExpress Delphi中处理数据库主要有两种方法,也就是BDE、ADO,从Delphi 6.0开始还加入了一种dbExpress方法。 另外,Delphi还提供了专门处理Borland 公司自己的数据库产品InterBase 数据库的专门的方法。 BDE(Borland Databas Engine), 是Delphi中最古老的技术,从delphi 2.0加入BDE 技术以后,一直是Delphi处理数据库的事实上的标准。BDE 是一个基于驱动程序的体系

13、结构,每一种数据格式或数据源都有一种驱动程序来驱动相近的数据源。BDE 可以很好的支持现在最流行的ODBC API方法,ODBC是一种C/C+ 应用程序编程接口(API ),无论是对任何一种客户/ 服务器关系型数据库管理系统(RDBMS ),还是最流行索引顺序访问方法(ISAM)数据库(Jet、Foxpro), 都能很好的访问。 同时,由于BDE 的驱动程序主要直接来自于第三方开发商,所以,对于像Oracle这些非微软的数据库,执行效率上比较高。正是这些特点,使BDE 技术还是得到了很多数据库开发程序员的欢迎。 ADO 技术是微软提出来的处理关系型数据库和非关系型数据库的新技术,它基于微软被称

14、为OLE DB的数据访问模式,它是专门为了给大范围商业数据源提供访问而设计的,包括传统的关系型数据表、电子邮件系统、图形格式、Internet资源等。ADO 所需内存更少,更适合大流量和大事务量的网络计算机系统。 ADO 顶层有三个对象:Connection、Command、Recordset。 Connection用以指定数据源,建立和数据源的连接。 Command 对象用以对数剧源执行指定的命令,可以接受SQL 语句,表和存储过程的名称,执行SQL 查询,更新数据,插入纪录等。 Recordset 对象表示的是来自表或命令执行结果的记录全集,操纵来自提供者的几乎所有数据。 由于ADO 技术

15、的迅速普及,从Delphi 5.0 开始,加入了ADO 技术的模块,并逐步成为Delphi数据库设计的主流。但是,和VB的ADODC 相比,它还是有所不同的,在数据绑定上,它更多的吸收了BDE 的特点,以做到和原来的程序兼容,同时,它又可以接受标准ADO 技术的各种属性和方法,在接受这些属性和方法时,它是和数据绑定控件脱离的,当然从某种意义上来说,这种方案提高了执行效率,给设计人员以更多的选择。 dbExpress 是Delphi 6.0加入的最新的数据库模块,它不使用缓存,可以快速浏览大量的数据,但是,不使用缓存就不能更改,所以它的标准方式是只读的。它一个重要的特点是交叉平台,可以和Linu

16、x 数据库连接,速度相当快。 下面的讨论,将以ADO 技术为主线,最后再说明BDE 和dbExpress的应用方式。 第二节 ADO 面板的主要组件 ADO 面板一共有7 个组件: ADOConnection: 主要用于建立数据库的连接; ADOdataSet:ADO 提取和操作数据库的主要数据集,可以直接连接到数据库,也可以通过 ADOConnection连接到数据库。 ADOtable:主要用以操作和提取单个基表的数据,可以直接连接到数据库,也可以通过 ADOConnection连接到数据库。 ADOquery:通过SQL 语言提取数据,其连接数据库的方式和前两种一样。 ADOStored

17、Proc: 这个组件专门用于运行数据库中的存储过程。 ADOCommand:该组件用于运行一些SQL 命令,这个组件可以和支持数据集的组件一起使用,也可以直接从一个基表中提取一个数据集。 RDSConnection: 一个进程或一台计算机传递到另一个进程或计算机的数据集合。 为了连接数据绑定控件,上述组件往往要和处于Data Access 中的Datasource配合使用。 可以看出,和VB的ADODC 不同的,Delphi中解决同一个问题提供了多种方案,看起来似乎增加了麻烦,但是却可以给程序员更大的自由空间,便于设计出高效率的数据库程序来。 下面通过几个例子来说明ADO 控件的用法。 第三节

18、 ADOtable组件 ADOtable、ADOdataSet、ADOquery和ADOStoredProc都继承同一个父类TCustomADODataSet,所以,在属性事件和方法上有很多相似的地方,但它主要是针对数据库中的表进行操作。 ADO -ADOtable 属性: Name=控件名 ConnectionString=连接字符串 可以通过点击右边的按钮,通过向导建立数据源。有时候需要知道相对路径,可以用下面的方法找到程序当前的路径: tpath:=ExtractFilepath(Application.Exename); 文件名:=Tpath+./data/Test.mdb 表明数据库

19、在当前程序上一层的Data文件夹下。 TableName=表名 Active=true 这就激活了数据源,为了和绑定控件联系,要增加一个DadaSource控件。事实上,所有的绑定控件都是和DadaSource联系。 Data Access-DadaSource 属性: Dataset=ADOtable.Name 加入绑定控件: Data Controls- DBgrid(表格) 属性 DadaSource=DadaSource.Name DBNavigator(导航条) 属性 DadaSource=DadaSource.Name 运行一下可以看出关系 下面介绍一下ADOtable的一些重要的

20、方法,这些方法大部分和Table是兼容的。 为了便于叙述,ADOtable控件的Name定为 ADOtable1 1)移动指针 第一个: ADotable1.First; 最后一个: ADotable1.Last; 下一个: ADotable1.Next; 前一个: ADotable1.Prior; 2)从字段中取出数据 通过如下方法可以访问字段的值 ADOtable1.FieldValues字段名 ADOtable1.Field索引值 在读写字段的时候,又是根据需要可以加上强制类型转换 例如: Edit1.text:=ADOtable1.Field0.AsString; 用下面的方法可以去除

21、字段的性质: ADOtable1.fielddefs索引值.name; 字段名 ADOtable1.fielddefs索引值.Size; 字段大小 ADOtable1.fielddefs索引值.Datatype; 字段属性 3)修改数据: 修改数据的时候,需要先建立EDIT方法,然后用Post方法才能真正的写入。 ADOtable1.edit; ADOtable1.FieldValues姓名:=王秀琴; ADOtable1.post; 4)增加一条空纪录: ADOtable1.append; 新增纪录也可以用如下方法,在新增纪录的同时输入数据 ADOtable1.appendRecord(xx

22、x,xxx,xxx,.); 5)删除当前纪录:ADOtable1.delete; 如果在ADOtable1的OnBeforeDelete方法中写下: if messagedlg(确实要删除吗?,mtinformation,mbyes,mbno, 0)=mrno then abort(); 可以实现删除前的提示。 6)过滤 可以用如下的方法实现数据的过滤 在ADOtable1的OnFilterRecord方法中写下: Accept:=(条件); 然后 ADOtable1.filtered:=true; 为实现过滤。 ADOtable1.filtered:=false; 为解除过滤。 7)指针在文

23、件的头尾 指针在最后一条记录之后 ADOtable1.Eof 指针在第一条记录之前 ADOtable1.Bof 如此可以实现对数据库的遍历 form1.ADOtable1.first; while not form1.ADOtable1.eof do Begin . form1.ADOtable1.next; End; 8)此外, ADOtable组件还继承了ADO 中的RecordSet对象几乎全部属性和方法,简述如下:with adoTable1.Recordset dobegin /属性 PageSize 一页所包含的记录数 PageCount 数据的页数 AbsolutePage; 当

24、前记录所在页 AbsolutePosition; 当前记录的序号位置 BOF; 指针在第一个记录之前 EOF; 指针在最后一个记录之后 /方法 AddNew fieldList,Values; 创建新记录,其中fieldList为用数 组表示的字段名集,Values为用数组表 示的数据集。 Cancel; 取消上一步所作的修改 Update Fields,Values; 保存对当前记录所作的修改 Delete; 删除当前记录 Move(n); 移动n 条记录 MoveFirst; 移动到第一条纪录 MoveLast; 移动到最后一条纪录 MoveNext 移动到下一条纪录 MovePrevio

25、us 移动到上一条纪录 Requery; 通过从新执行对象所基于的查询,以 更新RecordSet 对象中的数据。 end; 使用Recordset 对象来处理数据集的数据,会发现数据帮定控件的指针一般不会跟着移动,这实际上给设计者提供了另一个在后台快速处理数据的方法。 附录:关于TActionList控件的使用 在Standard面板,提供了一个TActionList 控件,它集中了大部分按钮的使用方法,可以简化按钮的设计。 方法: 调入TActionList,双击,可以看到一个面板,右键 -New Standard Action 选择 Datasat下的适当的控制,可以选择多个。 以后加入

26、的开关,只要在属性Action 中选择适当的项目就可以了,不需要专门编程,实例见“ActionList应用”。 第四节 ADOQuery组件 和ADOtable组件一样,ADOquery继承了同一个父类TCustomADODataSet,所以,上面说到的ADOtable属性事件和方法基本上是通用的,但它主要是针对数据库中的SQL 命令进行操作。 下面主要说一下ADOquery特殊的地方。 1)SQL 属性 SQL 是TStrings类型的属性,包含了ADOquery组件要执行的SQL 命令,是ADOquery最为重要的属性之一。 在应用程序中,需要调用Open方法或者ExecSQL 方法来执行

27、在SQL 中的命令。在设计阶段,可以利用属性编辑起来编写。 例如: Width ADOquery do Begin /重新写入时,要关闭原来的查询 Close; width SQL do Begin /因为Add是在原来的基础上加入,所以先清除原来的SQL命令 Clear; Add(selsct 编号,姓名,奖金) Add(From 奖金表) End; /执行SQL 命令 Open; End; 查询命令也可以这样来写:s1:=编号;s2:=姓名;s3:=金额;with ADOquery1 do begin sql.Clear; SQL.Add(select ); SQL.Add(s1+,+s2+,+s3); SQL.Add( From 奖金 ); execsql; active:=true; end; 效果是一样的。 第五节 ADOConnection 和 ADODataSet 虽然ADOTable和ADOQuery组件可以非常简单的连接数据库,但是当需要更加精细的控制数据库的时候,往往需要应用ADO 更多的方法,我们知道,支

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2