MSSQL2008 使用DateTime问题

MSSQL2008 使用DateTime 使用 new util.date();写入报错

com.jfinal.plugin.activerecord.ActiveRecordException: com.microsoft.sqlserver.jdbc.SQLServerException: 不支持从 UNKNOWN 到 UNKNOWN 的转换。


查了一下:

SqlServerDialect的方法fillStatement()

image.png

没有util.date的判断。

使用sql.date 就没问题。

但是BaseModel自动生成,DateTime对应的是util.date,这样子就得去改源码。

在不改源码的情况下,有没有其他方法


评论区

wyrdtc

2017-12-12 16:14

重写了SqlServerDialect

wyrdtc

2017-12-12 16:15

增加了fillStatement 的else if (value instanceof java.util.Date) {
pst.setTimestamp(i + 1,new java.sql.Timestamp(((java.util.Date)paras[i]).getTime()));
}判断

JFinal

2017-12-12 20:25

@wyrdtc 你的反馈已经做到了 jfinal 3.4 之中,多多关注社区动态,jfinal 3.4 发布时试用一下这个功能,感谢反馈

JFinal

2018-05-05 17:04

jfinal 3.4 已改进这里,建议升级

热门反馈

扫码入社