从数据库表中提取的日期格式是 2009-02-28 00:00:00.000如何赋给TDateTime类型变量(想要的格式为2009-02-28)

解决方案 »

  1.   

    var
      A : TDateTime;
    A := AdoQuery1.fieldbyname('表中字段名').Value;
      

  2.   

    var
      AStr :string;
      ADate :TDateTime;
    begin
      AStr :='2009-02-28 00:00:00.000';
      ADate :=StrToDateTime(AStr);
      ShowMessage(FormatDateTime('YYYY-MM-DD',ADate));
      

  3.   

    var 
      dt: TDateTime; 
    dt:= AdoQuery1.fieldbyname(fieldname).asdatetime;  
    s:=FormatDateTime('yyyy-MM-dd',dt);如果用的DateTimePicker1可以把format属性设置为'yyyy-MM-dd' kind属性设置为dtkDate
      

  4.   

    用formatdatetime转换一下
      DateTimePicker1.Date := strtodate(formatdatetime('yyyy-mm-dd',strtodatetime('2009-02-28 00:00:00.000')));
      
      

  5.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      //DateTimePicker1.Date := strtodate(formatdatetime('yyyy-mm-dd',strtodatetime('2009-02-28 00:00:00.000')));
      with adoquery1 do
      begin
        close;
        sql.text := ' select daytime from tt where id=1';
        open;
        if not eof then
        begin
          DateTimePicker1.Date := strtodate(formatdatetime('yyyy-mm-dd',fields[0].AsDateTime));
        end;
      end;
    end;
      

  6.   

    这句就不通过
    DateTimePicker1.date:=strtodate(formatdatetime('yyyy-mm-dd',strtodatetime('2009-02-28 00:00:00.000')));
      

  7.   

    with ADOQuery1 do
      begin
        close;
        SQL.Clear;
        SQL.Add('select * from tb');
        Open;
        if RecordCount >0 then
        begin
          DateTimePicker1.DateTime :=FieldByName('addTime').AsDateTime;
        end;
      end;
      

  8.   

    如果是用的DateTimePicker1,直接设置kind属性为dtkDate,format属性为'yyyy-MM-dd'就可以了怎么我四楼的回复显示不出来呢?
      

  9.   

    procedure TForm1.Button1Click(Sender: TObject);
    var adate: tdatetime;
    begin
      adate := strtodate(formatdatetime('yyyy-mm-dd',strtodatetime('2009-02-28 00:00:00.000')));
    end;这样出错