代码如下: 
adoqry_mx.FieldByName('cust_time').AsDateTime := dt1.DateTime;
它把年月日,时分秒都存到数据库中了,我只要年月日。如何做?

解决方案 »

  1.   

    我的笨办法是用一个datetimepicker控件,onshow函数中datetimepicker.datetime:=date;
    字段的值等于datetimepicker。datetime  绝对搞定 
    恭候手赐教!
      

  2.   

    StrToDate(FormatDateTime('yyyy.mm.dd',[dt1.DateTime]));
      

  3.   

    TO:angle097113(亡命天使) ( ) 
    我用的就是 datetimepicker。代码就是:
    adoqry_mx.FieldByName('cust_time').AsDateTime := dt1.DateTime;
    我错在哪里?
    我的代码怎么改?
      

  4.   

    注意 亡命天使在onshow 里面的操作。另外,我是在FormCreate 里面
    dt.Time := EncodeTime(0, 0, 0, 0);
      

  5.   

    adoqry_mx.FieldByName('cust_time').AsDateTime := Trunc(dt1.DateTime);
      

  6.   

    你用的是什么数据库,如果是SQL Server的话,那不管你程序怎么处理
    如果数据库字段的类型为DataTime(也就只有这一种)的话,那肯定会保存时间的
    其实这也没有什么关系的,读出来的时候转换一下就可以了
    如果真的不想要时间的话,那时期就要字符串类型来保存
    如保存:'2003-05-03'就可以了,读出来的时候,再把它转成时间类型的
      

  7.   

    建议使用dateof()函数,要引用dateutils单元噢
      

  8.   

    对于ACCESS来说把数据库字段设为日期型,不要设定为日期时间型就行了。
      

  9.   

    代码如下: 
    adoqry_mx.FieldByName('cust_time').AsDateTime := dt1.Date
    就可以了.
      

  10.   

    用Trunc()函数一下子就可以去掉小数部分,
    剩下的便是你要的年月日了!
     
      

  11.   

    其实对日期字段是可以用字符串赋值的
    adoqry_mx.FieldByName('cust_time').AsString := FormatDateTime('yyyy-mm-dd', dt1.Date);