我首先把当前的时间显示在Edit1中,然后把Edit1中的内容读取出来转化成时间A(我在这里对Edit1中的数据稍微修改了一下,比如把毫秒加了3),然后把这个时间再插入到数据库中dateTime格式的字段A,B:TDateTime
A:=now();
edit1.text:=fromatdatime('yyyy-MM-dd hh:nn:ss:zzz',A);
B:=strtodatetime(edit1.text);
edit2.text:=formatdatetime('yyyy-MM-dd hh:nn:ss:zzz',B) ;出了问题说B不是dateTime类型的,为什么?
'2008-10-23 19:52:47:808' is not a valid date.

解决方案 »

  1.   


    procedure Tform1.button1Click(Sender:TObject);
    var
      todayis,dateis :string;
    begin
      DateTimeToString(Todayis,'yyyy年mm月dd日',date());
      edit1.text:=todayis;
      DateTimeToString(dateis,'yyyy年mm月dd日',strtodate('2008-10-23'));
      edit2.text:=dateis
    end;
      

  2.   

    A,B:TDateTime 
    A:=now(); 
    edit1.text:=fromatdatime('yyyy-MM-dd hh:nn:ss:zzz',A); 
    B:=strtodatetime(edit1.text); 
    edit2.text:=formatdatetime('yyyy-MM-dd hh:nn:ss:zzz',B) ; B:=strtodatetime(edit1.text); 这句后面没加('edit1.text')B:=strtodatetime('edit1.text');
    这个函数里面得是字符串~!
      

  3.   

    上面说错了。测试了一下,通不过。
    procedure Tform1.button1Click(Sender:TObject);
    var
      A,B:TDate; 
    begin
    A:=now(); 
    edit1.text:=formatdatetime('yyyy-MM-dd hh:nn:ss:zzz',A); 
    B:=strtodatetime(edit1.text); 
    edit2.text:=formatdatetime('yyyy-MM-dd hh:nn:ss:zzz',B);
    end;如上代码能通过,但是时间没能精确到00:00:00:000,最后只有00,没有三位。
      

  4.   


    B:=strtodatetime('edit1.text'); 老大你的这个有问题吧?