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是不可识别的函数名。
请帮忙改下。 展开
这样写的报错
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是不可识别的函数名。
请帮忙改下。 展开
7个回答
展开全部
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;
代码如下
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 广告
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图...
点击进入详情页
本回答由AiPPT提供
展开全部
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;
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;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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);
他的格式是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);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以直接在SQL Server下使用GetDate()
例如:
insert into 表(日期) values (GetDate())
或者你在设计表的时候就将这一列的默认值设为当前时间,你写代码的时候都不用考虑这个了。
例如:
insert into 表(日期) values (GetDate())
或者你在设计表的时候就将这一列的默认值设为当前时间,你写代码的时候都不用考虑这个了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Delphi系统时间函数是:Now();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询