2017-07-19 74 views
1

我试图执行一个存储过程,其中一个参数的类型是smalldatetime。在过去,我一直将datetime2datetime字段编码为字符串,并且工作正常。我正在使用Microsoft JDBC DriverJDBC编码到sql server smalldatetime

我在尝试使用string/nvarchar作为smalldatetime参数时出现此错误。在microsoft documentation

Error converting data type nvarchar to smalldatetime. Query: EXEC dg.FooBar ?, ?, ?, ?, ? Parameters: [[123, 1, 2099-01-01, 1, DG TEST]] 

寻找它建议使用java.sql.Timestamp类。将我的java代码更改为Timestamp.valueOf(LocalDate.of(2099, 1, 1).atStartOfDay())我收到类似的错误。

Error converting data type datetime2 to smalldatetime. Query: EXEC dg.FooBar ?, ?, ?, ?, ? Parameters: [[123, 1, 2099-01-01 00:00:00.0, 1, DG TEST]] 

任何帮助表示赞赏。

回答