当前位置: 首页 > 面试题库 >

ResultSet#getDate()语义

柯英奕
2023-03-14
问题内容

我们从迁移到ojdbc6-11.2.0.3.0ojdbc7-12.1.0.1并观察到ResultSet#getDate()语义上的变化。以前,java.sql.Date根据上指定的合同,通过将小时,分钟,秒和毫秒设置为零,可以对返回的值进行“规范化”
java.sql.Date。与ojdbc7此不再的情况下和java.sql.Date具有小时,分,秒和毫秒根据数据库上的值来设置。

我查看了Javadoc,ResultSet#getDate()但没有明确指出哪种行为是正确的。我会以为旧行为是规范的意图。我对吗?我们遇到驱动程序错误了吗?


问题答案:

这显然是一个错误,因为该类的文档java.sql.Date指出

为了符合SQL DATE的定义,必须通过将与实例相关联的特定时区中的小时,分​​钟,秒和毫秒设置为零,来“标准化”
java.sql.Date实例包装的毫秒值。 。



 类似资料:
  • 问题内容: 我在ResultSet.getDate(x)调用中失去了精度。基本上: 返回的日期被截断为MODIFIED是默认精度的Oracle TIMESTAMP字段的日期。我认为可能缺少一些JDBC调整;通常,TIMESTAMP与DATE兼容,但我希望不必重新定义整个表。 问题答案: 传回,而不是。它被定义为一个永恒的日期。如果需要时间戳记,请使用!

  • getDate() 方法 返回月份的某一天。 语法: dateObject.getDate(); 返回值: dateObject 所指的月份中的某一天,使用本地时间。返回值是 1 ~ 31 之间的一个整数。 说明: 该方法总是结合一个 Date 对象来使用。 示例: var DATE = new Date(); console.log( DATE.getDate() ); 结果:

  • 描述 (Description) getDate()方法根据本地时间返回指定日期的月中某天。 getDate()返回的值是1到31之间的整数。 语法 (Syntax) 下面给出了getDate()方法的语法。 Date.getDate() 例子 (Example) 以下示例演示了CoffeeScript中getDate()方法的用法。 将此代码保存在名为date_getdate.coffee的文

  • 描述 (Description) getDate()方法根据本地时间返回指定日期的月中某天。 getDate()返回的值是1到31之间的整数。 语法 (Syntax) 下面给出了getDate()方法的语法。 Date.getDate() 例子 (Example) 以下示例演示了CoffeeScript中getDate()方法的用法。 将此代码保存在名为date_getdate.coffee的文

  • JavaScript date getDate()方法根据本地时间返回指定日期的月中某天。 getDate返回的值是1到31之间的整数。 语法 (Syntax) Date.getDate() 返回值 (Return Value) 返回今天的日期和时间。 例子 (Example) var dt = new Date("December 25, 1995 23:15:00"); console.

  • 问题内容: 我想从带有JDBC的Oracle DB表中获取DATETIME列。这是我的代码: 我必须先确定列类型。我感兴趣的字段被识别为Types.DATE,但实际上它是DB中的DATETIME,因为它具有以下格式:“ 07.05.2009 13:49:32” getDate截断时间:“ 07.05.2009”,getString追加“ .0”:“ 07.05.2009 13:49:32.0” 当