Delphi 学习ClientDataSet

Delphi 学习ClientDataSet
ClientDataSet简介

ClientDataSet的优点是不需要BDE的支持就能实现类似数据的操作,并且它的机制是在本地建立内存建立副本,增删改查操作执行速度很快,只需要一个MIDAS.DLL的支持。
ClientDataSet关联DataSource、DBGrid关联DataSource,同时ClientDataSet还支持使用远程数据库的数据源,
ClientDataSet新建一个表
ClientDataSet1.FieldDefs就是字段定义的位置,通过鼠标右键ADD ITEM来添加,如下图所示
在这里插入图片描述

主要设定字段的Name、DataType、Size属性,Name就是字段名称、DataType是数据类型,Size是数据长度,Precision是浮点数类型数据的精确度。

在这里插入图片描述

在FieldDefs定义好字段数据之后,在ClientDataSet控件上右键,点击Create DataSet选项,完成表的创建,如下图所示。
在这里插入图片描述

ClientDataSet保存
ClientDataSet. SaveToFile(‘test.xml’);
ClientDataSet. SaveToStream();
ClientDataSet保存可以使用cds格式或者XML格式,cds格式不能打开查看内部数据,XML可以看到数据的内部定义,如下图所示。
如下图所示,FIELDS是表的字段的定义,ROWDATA里面保存的就是数据记录。
Patams 里面的CHANGE LOG 是数据操作日志,可以想数据库操作一样进行提交,实现数据完成操作,也可以同步撤销提交,使得对数据记录的控制更加细腻。
在这里插入图片描述

ClientDataSet获得数据
ClientDataSet获得数据有三种方式,分别是加载本地数据、从另外一个数据直接复制,加载远程数据库的数据。
ClientDataSet查询数据。
ClientDataSet.findkey([‘字段值’]);这个函数需要使用ClientDataSet.IndexFiledNames来指定默认的索引是哪一个才能使用

ClientDataSet.Locate()使用
如下面代码所示,查询多个字段用分号;隔开,
if ClientDataSet1.Locate(‘name;pwd’, VarArrayOf([Edit1.Text,Edit2.Text]) , []) then begin
Edit2.Text := ‘yes’;
end else begin
Edit2.Text := ‘no’;
end;

猜你喜欢

转载自blog.csdn.net/xdAndSx/article/details/128316792