请问clientDataSet动态加字段的问题

ycongtou 2013-02-06 12:08:03
cds中已有字段birthday,想根据birthday来算出week,month,age等信息,然后在cds中添加这几个字段然后设值,但是,在这句FieldDefs.Add('WEEK',ftString);后,再写FieldByName('WEEK')程序会报cds找不到week字段,怎么解决?多谢。
还有个引出上面问题的sql问题,要根据生日查出客户的年龄,还有根据合同签订日期查出是当年的第几周第几个月,但用select YEAR(CURRENT DATE)-YEAR(O.BIRTHDAY) AS AGE这种方式在quest里执行是没问题,但在后台java程序中会报 “算数表达式中的时间/日期类型无效”。是不是因为BIRTHDAY字段为空?有没有什么解决办法呢,像用case when语句或者coalesce 可以搬到吗?
还有,是不是sql语句不建议搞得很复杂?没必要用sql查的东西在程序里处理更好?比如在delphi根据birthday得到年龄要比用sql查更好一些?
...全文
52 1 点赞 打赏 收藏 举报
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ycongtou 2013-02-06
自己先用 select '0' Y from 表 这种方式在数据集占个位试下吧....
  • 打赏
  • 举报
回复
相关推荐
发帖
Delphi
加入

4969

社区成员

Delphi 开发及应用
申请成为版主
帖子事件
创建了帖子
2013-02-06 12:08
社区公告
暂无公告