在数据库里定义了小数位为8,为何在DBEdit和DBGrid中只显示4位小数?

xlzps 2001-06-25 06:17:27
我在数据库SQL Server里定义一字段为numeric,精度为18,小数位8,在Delphi中使用ADOConnection、ADODataSet(ADOQuery、ADOTable也一样),用DBEdit和DBGrid显示该字段时,小数位数自动截取为4位,为什么,如何能解决这个问题?我试过将ADODataSet的EnableBCD属性改为False,能显示8位,但这个属性修改后不知会不会有别的问题?有别的解决办法吗?
...全文
558 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xlzps 2001-06-25
  • 打赏
  • 举报
回复
我试过用ADO的DisplayFormat为0.00000000,仍然没有用,它只是截取前4位数据,后面就为0000!!
xlzps 2001-06-25
  • 打赏
  • 举报
回复
我试了,用BDE连接,是没有这个问题,但现在我的整个程序都用的是ADO,本来是4位,用户现在要求改为8位,要改为BDE则程序都得改!
xlzps 2001-06-25
  • 打赏
  • 举报
回复
用Float小数位如何控制?
zou5655 2001-06-25
  • 打赏
  • 举报
回复
你用别的数据类型可以解决该问题,比如用FLOAT数据类型
xlzps 2001-06-25
  • 打赏
  • 举报
回复
怪,分明还没有人回复,我这却显示有3人回复了!!
InsideDelphi 2001-06-25
  • 打赏
  • 举报
回复
不会有问题的,如果为BCD,你可以在FieldDefs定义字段小数数目
InsideDelphi 2001-06-25
  • 打赏
  • 举报
回复
不会有问题的,如果为BCD,你可以在FieldDefs定义字段小数数目
guoyuzhang 2001-06-25
  • 打赏
  • 举报
回复
如果你用BDE,那么把EnableBCD设为TRUE即可!
或者用Format

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧