org.hibernate.exception.SQLGrammarException: could not get next sequence value
看看你的hbm.xml的id生成方式。。你应该写成assigned. 因为你不是自动标识列
看看你的hbm.xml的id生成方式。。你应该写成assigned. 因为你不是自动标识列
解决方案 »
- Cannot find bean: "scripList" in scope: "request"
- ?Hibernate查寻上来对象取值问题?
- com.microsoft.sqlserver.jdbc.SQLServerException: 该语句没有返回结果集。
- 关于连接池的问题
- struts中验证出错以后select控件被清空,请兄弟们帮忙呀
- 如何设置TOMCAT的主目录???????
- 请问weblgoic配置自定义文件路径问题!谢谢!
- struts问题
- 查询问题,知道的帮帮忙!!!解决就给分!!!
- csdn论坛
- 请教 java3d的applet发布,出现 java.lang.NoClassDefFoundError: javax/media/j3d/Node 异常
- 配置第一个JSP问题 崩溃了
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="com.orm.Adminuser" table="ADMINUSER" schema="SYSTEM">
<id name="id" type="java.lang.Long">
<column name="ID" precision="22" scale="0" />
<generator class="native" />
</id>
<property name="loginname" type="java.lang.String">
<column name="LOGINNAME" length="20" not-null="true" />
</property>
<property name="loginpassword" type="java.lang.String">
<column name="LOGINPASSWORD" length="20" not-null="true" />
</property>
<property name="truename" type="java.lang.String">
<column name="TRUENAME" length="20" not-null="true" />
</property>
<property name="mobile" type="java.lang.String">
<column name="MOBILE" length="21" />
</property>
<property name="phone" type="java.lang.String">
<column name="PHONE" length="21" />
</property>
<property name="fax" type="java.lang.String">
<column name="FAX" length="21" />
</property>
<property name="sex" type="java.lang.String">
<column name="SEX" length="4" />
</property>
<property name="note" type="java.lang.String">
<column name="NOTE" length="100" />
</property>
</class>
</hibernate-mapping>
(
ID INTEGER not null,
LOGINNAME VARCHAR2(20) not null,
LOGINPASSWORD VARCHAR2(20) not null,
TRUENAME VARCHAR2(20) not null,
MOBILE VARCHAR2(21),
PHONE VARCHAR2(21),
FAX VARCHAR2(21),
SEX VARCHAR2(4),
NOTE VARCHAR2(100)
);
-- Create/Recreate primary, unique and foreign key constraints
alter table ADMINUSER
add primary key (ID)
using index ;
-- Create/Recreate indexes
create index IDX_ADMINUSER_NAME on ADMINUSER (LOGINNAME);
<column name="ID" precision="22" scale="0" />
<generator class="native" />
</id>
如果要改成Integer的话你的配置文件红色部分也要改的
都已经修改了
但还是没有成功,错误提示还是一样。
<id name="id" type="java.lang.Long">
<column name="ID" />
<generator class="sequence" />
</id> 然后,你要保证使用hibernate3.2,这样它可以自动在oracle数据库中创建一个名为hibernate_sequence序列,以后你的ID全部从这个序列里获得。现在你的问题就是在oracle数据库里没有这个序列,所以报:java.sql.SQLException: ORA-02289: 序列不存在 。
<id name="id" type="java.lang.Long">
<column name="ID" precision="22" scale="0" />
<generator class="native" >
<param name="sequence">S_AGENG_ID</param>
</generator>
</id>
S_AGENG_ID:数据库中序列的名字
自定义主键配置:
<id name="id" type="java.lang.Long">
<column name="ID" precision="22" scale="0" />
<generator class="assigned" />
</id>
注意:
不用修改映射文件类的类型
<column name="ID" />
<generator class="assigned" />
</id>