delphi中用DBedit获取数据库中date类型时间,如何和系统时间比较获得差值

Sekai_Z 2017-04-17 09:16:59
delphi中用DBedit获取数据库中date类型时间,如何和系统时间比较获得差值天数?大神们求指教哇
...全文
598 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
santiaodahan 2017-04-18
  • 打赏
  • 举报
回复

uses DateUtils;
DaysBetween(Now(), date1)
nextop88 2017-04-18
  • 打赏
  • 举报
回复
MinutesBetween,自带函数
lyhoo163 2017-04-18
  • 打赏
  • 举报
回复
前题,数据库的相关表,已打开:

var D:TDateTime;
    L:integer;
begin
  D:=ClientDataSet1.FieldByName('时间').AsDateTime;
//或D:=ADOQuery1.FieldByName('时间').AsDateTime;
  L:=Trunc(Now-D);
  if L>0 then ShowMessage('已过'+IntToStr(L)+'天!')
         else ShowMessage('还差'+IntToStr(L)+'天!'); 
end;
lyhoo163 2017-04-18
  • 打赏
  • 举报
回复
前题,数据库的相关表,已打开: [code=dellphi] var D:TDateTime; L:integer; begin D:=ClientDataSet1.FieldByName('时间').AsDateTime; //或D:=ADOQuery1.FieldByName('时间').AsDateTime; L:=Trunc(Now-D); if L>0 then ShowMessage('已过'+IntToStr(L)+'天!') else ShowMessage('还差'+IntToStr(L)+'天!'); end; [/code]
jjpweb 2017-04-18
  • 打赏
  • 举报
回复
相减取整trunc(now-date1)
lyhoo163 2017-04-18
  • 打赏
  • 举报
回复
DaysBetween(Now(), date1) 仅地二者之间差几天,不能判别未到,过期值。
lyhoo163 2017-04-18
  • 打赏
  • 举报
回复
引用 2 楼 lyhoo163 的回复:
前题,数据库的相关表,已打开:

var D:TDateTime;
    L:integer;
begin
  D:=ClientDataSet1.FieldByName('时间').AsDateTime;
//或D:=ADOQuery1.FieldByName('时间').AsDateTime;
  L:=Trunc(Now-D);
  if L>0 then ShowMessage('已过'+IntToStr(L)+'天!')
         else ShowMessage('还差'+IntToStr(L)+'天!'); 
end;
自己就是这样的使用,方便地提醒,未来还是过期。

2,495

社区成员

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

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