首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Delphi tClientDataset中保存和读取记录

如何在Delphi tClientDataset中保存和读取记录
EN

Stack Overflow用户
提问于 2018-09-20 00:24:01
回答 1查看 340关注 0票数 0

日安

我是Delphi的新手。我正在尝试以编程方式将记录保存到tClientDataset,然后从dataset中读取该记录。我想我似乎已经成功地在数据集中保存了记录,因为在我将数据附加到记录并发布它之后,数据集的recordcount是1。但是,当我尝试读取记录的值时,我得到的结果是Null。我使用工具栏创建了tclientdataset,并在设计窗口中手动设置了字段。数据集的名称为

代码语言:javascript
运行
复制
dsUnitData

我使用的是Delphi RadStudio XE2。

有没有人可以帮我指出我在读取Null而不是之前填充的值时做错了什么?

下面是我的代码:

代码语言:javascript
运行
复制
procedure TfFeetRevenueByUnit.BitBtn1Click(Sender: TObject);
var test, theunitname : string;
count, feet, counter : integer;
revenue :currency;
begin
label3.Visible := false;

dsUnitData.Insert;
dsUnitData.FieldValues['Field_UnitName'] := 'test';
dsUnitData.FieldValues['Field_Feet'] := 10;
dsUnitData.FieldValues['Field_Revenue'] := 10.1;
dsUnitData.Post;

count := dsUnitData.RecordCount;

if not dsUnitData.Active then
dsUnitData.Open;
dsUnitData.First;
while not dsUnitData.EOF do
begin
theunitname := dsUnitData.FieldByName('Field_UnitName').Value;
feet := dsUnitData.FieldByName('Field_UnitName').Value;
revenue := dsUnitData.FieldByName('Field_Revenue').Value;
dsUnitData.Next;
end;
EN

回答 1

Stack Overflow用户

发布于 2018-09-20 00:52:42

我找到问题了。我错误地为tClientDataset设置了字段的FieldKind。我将FieldKind设置为fkCalculated,但它应该是fkInternalCalc

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52410350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档