小编Vig*_*ggy的帖子

SQL Server 2005 到 2012 com.microsoft.sqlserver.jdbc.SQLServerException:不允许从数据类型 varbinary 到 datetime2 的隐式转换

我们正在从 SQL Server 2005 迁移到 2012。其中一项功能因此错误而失败

com.microsoft.sqlserver.jdbc.SQLServerException:不允许从数据类型 varbinary 到 datetime2 的隐式转换。使用 CONVERT 函数运行此查询。

我们用来SQLJDBC driver 3.0与 SQL Server 2012 进行通信。当我们尝试将 NULL 值插入列DATETIME(可为空)时,我发现会发生此问题。但在 2005 年也同样有效。对于此问题的任何帮助,我们将不胜感激。

这是一个INSERT使用 MyBatis ORM 从 Java 到 SQL Server 2012 失败的简单语句:

Insert into temp_test (date1, name, date2) values ('2010-10-10 00:00:00.0','test',null) 
Run Code Online (Sandbox Code Playgroud)

当我们尝试从我们的应用程序(使用 SQL JDBC 驱动程序)时,此插入失败...但是相同的代码库在 SQL 2005 中可以正常工作,没有任何问题。

sql-server-2005 sqljdbc mybatis sql-server-2012

2
推荐指数
1
解决办法
4102
查看次数