数据库放在服务器上:
select (day,'2010-3-10','2010-3-15')结果为5正确
数据库放在本机上:
select DATEDIFF(day ,getdate(),'2010/3/5')结果为13 正确
数据库放在网络服务器
select DATEDIFF(day ,getdate(),'2010/3/5')结果为352 奇怪了.

解决方案 »

  1.   

    你先运行一下 select getdate() 
    看看电脑时间是多少?
      

  2.   

    select DATEDIFF(day ,getdate(),'2010/3/5')结果为13 正确
    数据库放在网络服务器
    select DATEDIFF(day ,getdate(),'2010/3/5')结果为352 奇怪了
    应该是系统服务器时间不对了.
      

  3.   

    服务器时间是准确的
    select today()
    2010-3-18
      

  4.   

    select DATEDIFF(day ,getdate(),'2010/3/5') 13也不对吧,-13
      

  5.   

    更准确的描述是:
    数据库放在局域网服务器上:
    select (day,'2010-3-10','2010-3-15')结果为5正确
    select DATEDIFF(day ,getdate(),'2010/3/5')结果为13 正确
    数据库放在公网有固定的IP地址上:
    select today()
    2010-3-18正确
    select DATEDIFF(day ,getdate(),'2010/3/5')结果为352 奇怪了.
      

  6.   

    数据库是sql anywhere 8.0.1
      

  7.   

    select DATEDIFF(day ,getdate(),'2010/3/5') 就是这样写的,错了肯定就是服务器时间搞错了。骂服务器管理员就是了
    哈哈!
    不过别真骂啊!
      

  8.   

    数据库放在那里,getdate()就取那的当前时间
    根据LZ的情况,应该是本机与网络服务器的时钟的时间不同.
    要相同,两者的时间必须同步.