delphi2007 教程

delphi2007 教程

首页 新随笔 联系 聚合 管理
  1013 Posts :: 0 Stories :: 28 Comments :: 0 Trackbacks
在Delphi中判断用户是否有超期未还的书本 Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiDB/html/delphi_20061225162553113.html
我使用了BDE来连接数据库,想判断一下数据库表中的用户是否有借阅超期未还的书本,应该怎样写哦~~(我使用了query,table,database,DBGrid,DataSource,表中已经有了所借时间,超过30天就过期)

使用query,然后查询select   *   from   yourtable   where   borrowdate+30>=getdate   把结果显示在dbgrid中就可以了!

 
  借阅时间   :   TDateTime;//如果是其它类型,就需要转换,如:   借阅时间:=varToDateTime('2006-12-2')  
   
        if   now   <   incday(借阅时间,30)   then  
              showmessage('在借阅期中')  
              else  
              showmessage('过期了!');  
 

忘记说:  
  1、需要引用sysUtils单元(uses   sysUtils;)  
  2、把   <     换成   <=

select   *   from   yourtable   where   borrowdate+30>=getdate   中的borrowdate和getdate格式如何写哦~~能举个例子吗~~

getdate如何写哦~~我要getdate是现在系统时间哦~~格式要yyyy-mm-dd哦

with   Query2   do  
  begin  
  close;  
  sql.Clear;  
  sql.add('select   借书证号码,所借日期   from   lend   where   借书证号码=:qame   and   所借日期>现在时间+30天   ');  
  ParambyName('qame').AsString   :=   edit14.Text;  
  open;  
  ShowMessage(IntToStr(RecordCount));  
  end;  
  现在时间+30天应该如何写哦~~

我替一楼回答一下吧:  
   
  'select   借书证号码,所借日期   from   lend   where   借书证号码=:qame   and   所借日期>dateadd("d",30,现在日期)   '  
 

我没有试验哦~~     一起测试一下吧~~     其实查一下VBScript函数大全应该会找到这样的函数的

我已经测试了,完全可以!    
   
  SQL.text   :=   '   select   *   from   lend   where   日期   >   dateadd("d",30,now)   '   ;  
   
  具体是用>   还是用   <   ,由楼主自己决定吧!反正   dateadd("d",30,now)   就等于今天+30天!  
                                                                                                          ~~注意单位是天(d)  
   
  楼主遇到这类的SQL语句不会写的问题,一是可以从网上找SQL相关资料,再是可以找VBScript函数。

posted on 2008-10-20 10:33 delphi2007 阅读(128) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。