gpt4 book ai didi

Java从Microsoft SQL Server准确读取日期而不指定时区

转载 作者:行者123 更新时间:2023-12-01 12:15:43 25 4
gpt4 key购买 nike

我的 Microsoft SQL Server 2008 R2 数据库表中有 DateTime 字段。我在 Android 应用程序中使用 jtds.jdbc.Driver 成功读取了此表。但我在读取正确的日期时间值时遇到问题。

ResultSet Result = ...createStatement().executeQuery("SELECT * FROM Operation");

while (Result.next())
{
Date iDate = this.getTimestamp(Result.getDate("Timestamp"), Result.getTime("Timestamp")));
}

public Date getTimestamp(java.sql.Date date, java.sql.Time time)
{
return new Date (date.getTime() + time.getTime());
}

当我显示 iDate 值时,我发现没有时区信息。例如,SQL Server 中的日期以时间 16:51 结束,但我的 diaplayed iDate 的结束时间为 14:51。有没有办法从 Microsoft SQL 服务器获取并显示准确的 DateTime 值而不指定任何 TimeZone 值?

最佳答案

您似乎正在使用不同的时区。如果您在数据库中保存的数据与您所在的时区不同,那么数据库中可能会保存您所在区域的当前时间。因此,您需要在将时间戳添加到数据库之前设置时间戳。请引用this帖子清楚地解释了并且可以帮助您。

关于Java从Microsoft SQL Server准确读取日期而不指定时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27019789/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com