不要用这种办法,直接用string进行赋值就够了

解决方案 »

  1.   

    qiubolecn(qiubole):怎样直接赋值?
      

  2.   

    直接赋值就是这样子的(我的理解):
    adoquery1.fields[0].asstring:=formatdatetime('yyyy-mm-dd',datetimepicker1.date);
      

  3.   

    我一般在数据库中直接用存储为char格式,在程序中再转换
      

  4.   

    把它转存为float字段,反正日期型也是双精度型变量。我没试过哦,成了告诉我一下。
      

  5.   

    听我的,没错。
    前些天在用SQL_Server,我是这么用的:
    (BCB)
      testRecTable->Edit();
      testRecTable->FieldByName("TestDate")->Value=DateToStr(Date());
    Delphi中应当为这样子了:
       testRecTable.Edit;
      testRecTable.FieldByName("TestDate").Value=DateToStr(Date);
    如果有小错自己改吗.注".Value"也可改为"AsString"。
      

  6.   

    SQL-SERVER,只有DATETIME类型的,没有DATE类型所以你的问题可能不好解决,但是你可以用adoquery1.fieldbyname('签约时间').AsString:=DateToStr(DateTimePicker1.date)
    或者
    adoquery1.fieldbyname('签约时间').AsDateTime:=DateTimePicker1.date试试看,或许可以。
      

  7.   

    你在保存之前所做的一切,sql都是不理会的。反正你保存了一个日期值,它就给你加个时间上去。除非你直接修改数据库的表(这以前我试过)
    所以没有必要去考虑如何去掉时间值,考虑一下在显示或查询的时候把日期值去掉吧