adoquery1.sql.add('insert into pdm3kw2 (p15,n15,p24v,bnv,powcurr,pwd,ref,totalt,
samdate,sametime)values ('+v12+','+v13+','+v11+','+v15+','+a01+','+p01+','+p02+'
,'+t01+','+#39 + formatdatetime('yyyy-mm-dd',now) + #39 + ',' + #39 +
 formatdatetime('hh:mm:ss',now) + #39  + ')');写进数据库后'yyyy-mm-dd'日期正确
而'hh:mm:ss',now的时间正常,前面还有日期1900-1-1
怎么回事情?
我要的是当前时间,谢谢!!
怎么取单前时间?

解决方案 »

  1.   

    是这样的
    所以你要:
    var
    time:string;
    begin
    time:=formatdatetime('hh:mm:ss',now) ;然后把time再赋值给sametime就可以了
      

  2.   

    SQL.Add(' Insert into Table(DateColumn) values( getedate()) ');

    SQL.Add(' Insert into Table(DateColumn) values('+''''+DatetimeToStr(Now)+''''+') ');
      

  3.   

    SQLServer没有time类型,你光把'18:00:00'放入datetime类型系统当然给你加上1900年
    但你在显示的时候可以select CONVERT(varchar(10), getDate(),120) --不要时间2002-1-1
    select convert(char(8),getdate(),112) ----20020101
    select convert(char(8),getdate(),108)  ---06:05:05这样来做