比如服务器都在美国,但是web服务器在西海岸,数据库服务器在东海岸,数据表时间字段一般都把默认值设成GETDATE(),那么新增数据,或者编辑数据的时候,就会带来时间不准确的问题。
关于这个问题,我想到的就是不要使用数据库服务的GETDATE(),所有有关时间的操作都由web服务器指定,但是存储过程会比较麻烦,要设置一个额外的时间参数来接收web服务器指定的时间
大家有什么其他解决思路吗?

解决方案 »

  1.   

    是不是还得想想,国内的访问用户,看到的时间还是美国时间,要不要改改呢?如果对时间有要求,都用UTC什么的好了
      

  2.   

    时间问题很麻烦,像美国有n个时区,他们的计算机时间不一定一样,你说的问题我们遇到过,可以统一采用数据库时间为准,整个系统都要统一,但是一定要注意用户看到的时间,比如,服务器在-6区,数据库在-7区,用户在-8区,那么用户看到保存之前的时间和数据库保存之后再取出来的时间很可能不一致...加入用户这个因素是考虑到用js在前端显示时间,js显示时间的问题很麻烦,很可能用户看到+1天,-1天了,一定要设置不同时区严格测试。
      

  3.   

    全部转化为UTC,显示的时候再转化为本地时间