Hibernate: select SEQ_BB2_SURVEY_QUESTIONNAIRE.nextval from dual
2010-1-23 9:17:45 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.sql.SQLException: ORA-02289: 序列不存在 at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:582)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1986)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteDescribe(TTC7Protocol.java:880)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2516)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2850)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:609)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:537)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92)
at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:75)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:91)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:186)
at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:33)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:175)
at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:27)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:530)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:518)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:514)
at org.springframework.orm.hibernate3.HibernateTemplate$12.doInHibernate(HibernateTemplate.java:635)
at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:372)
at org.springframework.orm.hibernate3.HibernateTemplate.save(HibernateTemplate.java:632)
at com.beibei.survey.dao.impl.Bb2SurveyQuestionnaireDaoImpl.saveBb2SurveyQuestionnaire(Bb2SurveyQuestionnaireDaoImpl.java:27)
at com.beibei.survey.service.impl.Bb2SurveyQuestionnaireServiceImpl.saveBb2SurveyQuestionnaire(Bb2SurveyQuestionnaireServiceImpl.java:35)
at com.beibei.survey.web.Bb2SurveyQuestionnaireAction.saveBb2SurveyQuestionnaire(Bb2SurveyQuestionnaireAction.java:44)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
at org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:110)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.beibei.util.EncodingFilter.doFilter(EncodingFilter.java:26)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)

解决方案 »

  1.   

    select SEQ_BB2_SURVEY_QUESTIONNAIRE.nextval from dual 
    你的数据库用的是oracle
    SEQ_BB2_SURVEY_QUESTIONNAIRE  没有这个序列。 select * from user_sequences where sequence_name='SEQ_BB2_SURVEY_QUESTIONNAIRE';执行它看有没有。如果没有的话。你就创建一个这个是创建序列的例子:CREATE SEQUENCE admin_id_sequence -- sequence name       
    Increment by 1      --   每次加几个,你可以指定为80个每次 :wink:       
    start with   1     --   从1开始计数       
    minvalue 1           --最小为1,nominvalue为不设置最小值,Oracle会指定:升序为1,降序为负10的26次方   
    maxvalue 9999999999           --最大值, NOMAXVALUE为不设置最大值,在这种情况下,Oracle默认指定:升序10的27次方,降序-1   
    cycle            -- 循环,nocycle为不循环   
    nocache  ;           --不缓存序列。 cache 10则表示缓存10个号,可提高效率,但可能造成跳号。     
      

  2.   

    樓上正解,你創建一個名叫SEQ_BB2_SURVEY_QUESTIONNAIRE的sequences 就行了
      

  3.   

    检查下SEQ_BB2_SURVEY_QUESTIONNAIRE是否存在,
    检查下当前用户是否有使用SEQ_BB2_SURVEY_QUESTIONNAIRE权限
      

  4.   

    使用oracle数据库时,你创建的表的字母是小写的吧,要大写。再不可以就是一楼说的先检查有没有。
      

  5.   

    hibernate配置可以自动生成sequence
      

  6.   

    在使用SSH整合的时候报序列号存在
    但是序列号在oracle数据库中是存在的
    为什么会有这个错误呢