首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将JDBC编码到sql server smalldatetime

将JDBC编码到sql server smalldatetime
EN

Stack Overflow用户
提问于 2017-07-20 01:58:49
回答 1查看 721关注 0票数 1

我正在尝试执行一个存储过程,其中一个参数的类型为smalldatetime。在过去,我总是将datetime2datetime字段编码为字符串,这样做效果很好。我正在使用Microsoft JDBC Driver

在尝试使用字符串/nvarchar作为smalldatetime参数时,我遇到了此错误。

代码语言:javascript
复制
Error converting data type nvarchar to smalldatetime. Query: EXEC dg.FooBar ?, ?, ?, ?, ? Parameters: [[123, 1, 2099-01-01, 1, DG TEST]]

看看microsoft documentation,它建议使用java.sql.Timestamp类。将我的java代码更改为Timestamp.valueOf(LocalDate.of(2099, 1, 1).atStartOfDay()),我得到了一个类似的错误。

代码语言:javascript
复制
Error converting data type datetime2 to smalldatetime. Query: EXEC dg.FooBar ?, ?, ?, ?, ? Parameters: [[123, 1, 2099-01-01 00:00:00.0, 1, DG TEST]]

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-20 02:05:53

smalldatetime支持的日期范围是1900-01-01到2079-06-06

https://docs.microsoft.com/en-us/sql/t-sql/data-types/smalldatetime-transact-sql

您正在尝试通过超出范围的2099-01-01 00:00:00.0。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45197841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档