为什么Delphi把38347转成日期为2004-12-26,而SQL Server却把它转成了2004-12-28,
这样转换下来,不管什么浮点数,Delphi转的总比SQL Server少了二天.

解决方案 »

  1.   

    有这样的事?sql server 是装在同一机器上吗
      

  2.   

    malamala(还真是笨):
    如何解决这个问题,谢了
      

  3.   

    看来你的SQLserver比别人活的快
      

  4.   

    是基准日期不同。
    Delphi的基准日期是1899-12-30,而SQLServer中的基准日期是1900-01-01,所一相差两天。
      

  5.   

    大家可以这样试试:
    SQL Server
    在SQL Server随便建立一个表,加一了字段为Float.保存之后,找开表增加一条记录设为38347,
    然后再修改这个表的字段为DateTime,保存之后,打开表可以看到此字段值为2004-12-28.
    Delphi
    用ShowMessage(DateTimeToStr(38347))弹出对话框,此时信息为2004-12-26试试吧
      

  6.   

    楼上说得没有问题,基准日期不同,楼主可以在做插入,修改操作时,时间字段用delphi转化得到字符串更新,或者在那个整数基础上-2得到,
      

  7.   

    只在delphi或SQL中转换,不要各自转换后比较