首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用ado数据集修剪从delphi中的表中获取的字符串数据

使用ado数据集修剪从delphi中的表中获取的字符串数据
EN

Stack Overflow用户
提问于 2019-05-29 14:09:28
回答 2查看 257关注 0票数 1

我有一个数据类型为char的表列,通过使用ADO数据集,我正在获取数据。但由于类型为char,它在显示数据时会在末尾加上额外的空格。此ADO数据集所在的窗体可由许多窗体继承。我想通过使用一些ADO数据集属性在父窗体上的Delphi代码中进行一些更改来裁剪额外的空格

我利用了数据字段的FixedChar属性,将其设置为false,但这并不起作用

EN

回答 2

Stack Overflow用户

发布于 2019-05-29 14:33:36

代码语言:javascript
复制
Select Cast(mycharcolumn as varchar(10)) as mynewcharcolumn from tablename

如果您可以更改检索数据的查询,就可以在数据集级别将char列有效地转换为varchar列。

如果无法对查询进行更改,则另一种方法是将计算列添加到数据集的Tfield列表中,并且在OnCalcFields事件处理程序中,可以对计算字段的值进行Trim(mycharcolumn)以“计算”该字段的值,然后在代码中使用该值来代替原始字段。

票数 1
EN

Stack Overflow用户

发布于 2019-06-01 03:14:29

您还可以设置字段的OnGetText事件并修剪文本:

代码语言:javascript
复制
procedure TMyForm.AdoDataSet1GetText(Sender: TField; var Text: string; DisplayText: Boolean);
begin
  Text := Trim(Text);
end;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56354097

复制
相关文章

相似问题

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