如何把数据库服务器里的时间进行本地化

非法字符啊 2010-10-29 02:43:00
现在又一个系统,数据库是SQL Server 2005,每次用户做交易的时候。
会在数据库中保存这条交易,并且保存下时间,保存时间方式是在插入
这条交易时,用数据库函数getdate()来保存时间。

问题是:
用户下次查看这条记录时,从服务器的数据库拿到的时间是数据库当地时间对吧!
如果这个用户和服务器有时差,如何根据用户的locale来显示用户本地化的时间。
(例如用户在2010年1月1日13:00做的交易,因为有时差关系,服务器记录的时间是
2010年1月1日18:00,下次用户查看的时候取出的是2010年1月1日18:00这个时间,如何
本地化呢)
...全文
136 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
tang3dashu 2010-10-29
  • 打赏
  • 举报
回复
知道 时区就好办了 。在后台对应的加减就行了
thatsinteresting 2010-10-29
  • 打赏
  • 举报
回复
你应该在保存数据的时候就用当地时间保存才对吧 让用户来选择时区
wawqhzbz 2010-10-29
  • 打赏
  • 举报
回复
即使数据库它自身的newDate() 在拿出来 或者是存进去的时候···我们需要进行时区的比较和处理··
呵呵··
wawqhzbz 2010-10-29
  • 打赏
  • 举报
回复
恩 我认为可以这么干··首先维护一张表 即使它里面只有一个字段 ,字段名称就是timeZone 存的是服务器本地的time
而当我们做新建操作的时候存时间··可以在Calendar 的那个类中拿到本地的timeZone 您在存数据库之前 ·可以将服务器的timeZone 与本地的TimeZone 比较 并且进行时间的换算,当然修改和现示也能这么去做,需要提供一个 changeTime的方法 就OK了 Calendar 或者是 TimeZone 类中 说不定有处理这一需求的办法
xtbzqw 2010-10-29
  • 打赏
  • 举报
回复
java里面的时间函数有显示为本地时间的吧!
woainiyibangcui 2010-10-29
  • 打赏
  • 举报
回复
可根据本地的时区与服务器所在的时区 做相应的加减~!
lodachi 2010-10-29
  • 打赏
  • 举报
回复
显示的时候 特别说明是北京时间

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧