Delphi中DataSet类型组件的Locate函数的用法

Delphi中连接数据库时,DataSet类型的组件是必用滴,比如:TADOTable组件和TADOQuery组件。而这些组件的Locate函数又是个非常方便的函数,它的功能就是根据关键字定位,而它的形式是这样的:

Self.ADOTable1.Locate(FieldName,Value,Option);

FieldName就是字段名称,Value就是字段的值,这两个没什么好多说的,这里主要讲讲Option参数,也就是选项。

Option是TLocateOptions类型的,TLocateOptions 是一个集合,定义域集合中有两个元素:

[loCaseInsensitive] 表示不区分大小写;
[loPartialKey] 表示可以匹配部分名字;

当然,如果不要任何开关,也可以写成这样:

Self.ADOTable1.Locate(FieldName,Value,[]);

另外补充一个小技巧,当需要通过多个字段进行定位时,可以这样写:

Locate('Field1;Field2;Field3', VarArrayOf(['Value1', 'Value2', 'Value3']), [loPartialKey]);




-------------------------------------------------------------------------------------

Delphi 数据库查询(TADOQuery)
在一个程序中你会多次查询数据库的,因此在你写的查询方法中定义一个局部的ADOQuery就可以了,它返回一个数据集_RecordSet。最简单的应用如下:

function GetData: _RecordSet; //获取一张表中的全部数据(_RecordSet是一种类型)
var
pADOQ: TADOQuery; //声明
begin
pADOQ := TADOQuery.Create(nil); //创建
pADOQ.Connection := ADOCon; //意思是ADOQuery连接数据库时用ADOConnection建立好的连接。
pADOQ.SQL.Text := 'select * from TableName';
pADOQ.Open; //执行查询,如果是增、删、改则用pADOQ.ExecSQL
Result := pADOQ.Recordset; //函数返回结果
end;

接下来是怎样用这个返回的结果集。
在用的地方再次声明一个ADOQuery,用于接收这个返回的结果集。(当然也可以直接使用)

var
pADOQ: TADOQuery;
pItem: TListItem; //一个listview,用于显示记录
begin
pADOQ := TADOQuery.Create(nil);
pADOQ.RecordSet := GetData; //将结果集赋给pADOQ
if pADOQ.RecordCount <= 0 then exit; //结果集为空,退出
pADOQ.First ; //将游标放到结果集的第一条记录
while not ADOQuery.Eof do //开始循环结果集(当该条记录不是最后一条时)
begin
pItem := lvMain.Items.Add; //在listview中加一行
pItem.Caption := Trim(ADOQuery.FieldByName('patid').AsString);
pItem.SubItems.Add(ADOQuery.FieldByName('patname').AsString);
pADOQ.Next; //游标移动到记录的下一条
end;

 

2.4.4 ADO数据库访问组件TADOQuery

   TADOQuery组件可以非常方便灵活地对一个或多个数据库表中的记录进行访问。在程序窗体中放置TADOQuery组件的过程同TADOTable组件。

    TADOQuery组件主要属性及方法与TADOTable组件相同,其中:

    SQL属性指定对数据库表进行访问的SQL语句,它可以是一条查询语句也可以是一条修改语句或插入语句等。

    在对象浏览器上,单击SQL属性时,会打开一个字符编辑器供程序设计者输入SQL语句。在SQL属性中,通过SQL语句来指定将要访问的数据库表。


在PythonDataset函数用于对数据集进行处理和打包。通常情况下,我们需要将数据和对应的标签进行打包,返回一个打包成元组的dataset对象。 一个常见的例子是使用自定义的Dataset类来创建数据集。在该类,我们可以定义初始化方法来初始化数据集,包括下载数据等操作。然后,我们可以定义getitem方法来根据索引返回数据和对应的标签。在该方法,我们可以使用transforms对数据进行处理,例如进行数据的归一化操作。最后,我们还需要定义len方法来返回数据集的长度。 另外,还可以使用torchvision.transforms的一系列变换函数来对数据进行处理,例如ToTensor和Normalize等。这些变换函数可以被组合成一个transforms对象,然后传入TransformDataset来对数据集进行进一步处理。 总结起来,PythonDataset函数主要用于对数据集进行打包和处理。我们可以使用自定义的Dataset类或者torchvision.transforms的变换函数来创建和处理数据集。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [pytorch学习笔记-各种Dataset的使用](https://blog.csdn.net/qq_45847624/article/details/118756126)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值