HIBERNATE采用JDTS不能INSERT数据的问题

以前采用的是JTurbo连数据库,可现在这个东东收费了,旧版的又不支持SQL2005,只好找了个JDTS来与数据库链接,

可发现在新增数据的时候总是报错,经过我的摸索总结如下几点原因:

第一:请确认你的主键设置都是正确的

第二:配置

<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>

必须为

<property name="dialect">net.sf.hibernate.dialect.SQLServerDialect</property>

否则在新增的时候报can't read hi value 的错误,搞的人非常郁闷

第三,一定要注意生成的映射文件的数据类型一定要匹配,好象JDTS里面对SQL SERVER2005里面的映射对应类型有些不一样,也一定要注意呀

如:

  <property name="adminName" color="#ff0000" column="ADMIN_NAME"> type="string</property> " />

等等了,反正用的时候多注意,也顺便提醒自己了

发生的错误如下:

insert a public info


16:50:26,393 ERROR TableGenerator:104 - could not read a hi value
java.sql.SQLException: 第 1 行: 只有 DECLARE CURSOR 才允许使用 FOR UPDATE 子句。


16:50:26,403  WARN JDBCExceptionReporter:35 - Preparing the statement failed: 第
 1 行: 只有 DECLARE CURSOR 才允许使用 FOR UPDATE 子句。
16:50:26,413  WARN JDBCExceptionReporter:57 - SQL Error: 1003, SQLState: S1000
16:50:26,413 ERROR JDBCExceptionReporter:58 - 第 1 行: 只有 DECLARE CURSOR 才允
许使用 FOR UPDATE 子句。

你可能感兴趣的:(sql,Hibernate,.net)