我想把数据库中的数据存放到一个数据结构中,以后遍历这个结构取数据就可以了,请问用什么数据结构好?有例子最好! 我想把数据库中的数据存放到一个数据结构中,以后遍历这个结构取数据就可以了,请问用什么数据结构好?有例子最好! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 自定义的记录结构加指针链表,具体查看Delphi自带的Virtual ListView例子。 var A: Variant;begin A := VarArrayCreate([0, 4], varVariant); A[0] := 1; A[1] := 1234.5678; A[2] := 'Hello world'; A[3] := True; A[4] := VarArrayOf([1, 10, 100, 1000]); WriteLn(A[2]); { Hello world } WriteLn(A[4][2]); { 100 }end; THashedStringList没用过,上网查了一下好象也没查到什么TLIST怎么用?variant可以记录多条吗?我想用某个结构来记录多个字段多条数据 不是告诉你了吗?查看Virtual ListView的例子。-------------------------------假设你的数据库中有字段A(Integer),字段B(String),字段C(Float),字段D(DateTime),那么如下……type PRecData = ^TRecData; TRecData = packed record FieldA: Integer; FieldB: String; FieldC: Single; FieldD: DateTime; end;var pData: PRecData; lstData: TList;//首先创建TList; lstData := TList.Create;//检索数据库,得到数据集,例如ADOQuery; while not ADOQuery.Eof do begin //建立新记录指针,保存数据 New(pData); pData^.FieldA := ADOQuery.FieldByName('字段A').AsInteger; pData^.FieldB := ADOQuery.FieldByName('字段B').AsString; pData^.FieldC := ADOQuery.FieldByName('字段C').AsFloat; pData^.FieldD := ADOQuery.FieldByName('字段D').AsDateTime; //将记录指针加入到链表中 lstData.Add(pData); ADOQuery.Next; end;//检索链表时…… pData(lstData.Items[3])^.FieldA //第4条记录的字段A pData(lstData.Items[0])^.FieldD //第1条记录的字段D//最后释放指针链表 略…… Delphi7不能入进调试,为什么? 关于存储过程的初级问题. 如何使一个DBGridEH只显示30条记录? 【纯粹散分帖】 给delphi版的朋友们,大家周末快乐! :) Record 类型的变量怎么释放内存空间? 高分送上 MS Development Encironment 怎么安装? 请问如何实现几种基本数据类型之间的转换? DataBase的事务处理! 还没解决,真悲哀! 谁有关于字符与ASCII码的对照关系表 导出EXCEL问题,急啊在线等! 大家国庆干了些啥?
begin
A := VarArrayCreate([0, 4], varVariant);
A[0] := 1;
A[1] := 1234.5678;
A[2] := 'Hello world';
A[3] := True;
A[4] := VarArrayOf([1, 10, 100, 1000]);
WriteLn(A[2]); { Hello world }
WriteLn(A[4][2]); { 100 }end;
TLIST怎么用?
variant可以记录多条吗?我想用某个结构来记录多个字段多条数据
-------------------------------
假设你的数据库中有字段A(Integer),字段B(String),字段C(Float),字段D(DateTime),那么如下……type
PRecData = ^TRecData;
TRecData = packed record
FieldA: Integer;
FieldB: String;
FieldC: Single;
FieldD: DateTime;
end;var
pData: PRecData;
lstData: TList;//首先创建TList;
lstData := TList.Create;//检索数据库,得到数据集,例如ADOQuery;
while not ADOQuery.Eof do
begin
//建立新记录指针,保存数据
New(pData);
pData^.FieldA := ADOQuery.FieldByName('字段A').AsInteger;
pData^.FieldB := ADOQuery.FieldByName('字段B').AsString;
pData^.FieldC := ADOQuery.FieldByName('字段C').AsFloat;
pData^.FieldD := ADOQuery.FieldByName('字段D').AsDateTime;
//将记录指针加入到链表中
lstData.Add(pData);
ADOQuery.Next;
end;//检索链表时……
pData(lstData.Items[3])^.FieldA //第4条记录的字段A
pData(lstData.Items[0])^.FieldD //第1条记录的字段D//最后释放指针链表
略……