Delphi 怎样获得系统时间? 20

我的图书管理系统,借阅时借阅日期用系统当先日期,应还日期用系统日期+30天;这样写的报错beginADOQuery1.Close;ADOQuery1.SQL.Clear;... 我的图书管理系统,借阅时借阅日期用系统当先日期,应还日期用系统日期+30天;
这样写的报错
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('insert into 借阅表(读者证号,条形码,借阅日期,应还日期,借书管理员代号,还书管理员代号,书名) values('''+trim(Edit1.text)+''','''+trim(Edit2.text)+''',Date(),(Date()+30),'''+trim(Edit5.text)+''','''+trim(Edit6.text)+''','''+trim(Edit8.text)+''')' );
ADOQuery1.ExecSQL;
end;
报错如下:Date是不可识别的函数名。
请帮忙改下。
展开
 我来答
Oo木叶之魂oO
2010-10-30 · TA获得超过1036个赞
知道小有建树答主
回答量:319
采纳率:0%
帮助的人:420万
展开全部
date()函数并没有错,只是这是delphi里面的取当前日期的函数,不能用在sql语句里面,可以给这两个日期赋值变量rq,rq2 然后在外面执行date()函数
代码如下
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('insert into 借阅表(读者证号,条形码,借阅日期,应还日期,借书管理员代号,还书管理员代号,书名) values('''+trim(Edit1.text)+''','''+trim(Edit2.text)+''',:rq,:rq2,'''+trim(Edit5.text)+''','''+trim(Edit6.text)+''','''+trim(Edit8.text)+''')' );
parameters.ParamByName('rq').Value:=date();
parameters.ParamByName('rq2').Value:=date()+30;
ADOQuery1.ExecSQL;
end;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
AiPPT
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
tangdaizuo
2010-10-30 · TA获得超过515个赞
知道小有建树答主
回答量:127
采纳率:0%
帮助的人:193万
展开全部
var rq1,rq2:string;
begin
rq1:=formatdatetime('yyyy-MM-dd',now());
rq2:=formatdatetime('yyyy-MM-dd',now()+30);
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('insert into 借阅表(读者证号,条形码,借阅日期,应还日期,借书管理员代号,还书管理员代号,书名) values('''+trim(Edit1.text)+''','''+trim(Edit2.text)+''','''+rq1+''','''+rq2+''','''+trim(Edit5.text)+''','''+trim(Edit6.text)+''','''+trim(Edit8.text)+''')' );
ADOQuery1.ExecSQL;
end;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Watinga
2010-11-10
知道答主
回答量:31
采纳率:33%
帮助的人:8.7万
展开全部
delphi 取系统时间直接now
他的格式是datetime型,如果你插入数据库的话这里要转换
ADOQuery1.SQL.Add('insert into 借阅表(读者证号,条形码,借阅日期,应还日期,借书管理员代号,还书管理员代号,书名) values('''+trim(Edit1.text)+''','''+trim(Edit2.text)+''','+DateToStr(now)+','+DateToStr(now+30)+','''+trim(Edit5.text)+''','''+trim(Edit6.text)+''','''+trim(Edit8.text)+''')' );
如果要自定义日期格式就是formatdatetime('yyyy-MM-dd HH:mm:ss ddd',now);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
googleyeyou
2010-10-30 · TA获得超过186个赞
知道小有建树答主
回答量:269
采纳率:100%
帮助的人:131万
展开全部
可以直接在SQL Server下使用GetDate()
例如:
insert into 表(日期) values (GetDate())

或者你在设计表的时候就将这一列的默认值设为当前时间,你写代码的时候都不用考虑这个了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
EdisonChan1982
2010-10-30 · TA获得超过451个赞
知道小有建树答主
回答量:134
采纳率:0%
帮助的人:85.1万
展开全部
Delphi系统时间函数是:Now();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式