From: <leg...@at...> - 2003-12-08 23:04:41
|
The following comment has been added to this issue: Author: Andrew J Delpha Created: Mon, 8 Dec 2003 5:03 PM Body: This is because by default, the OracleDialect and Oracle9iDialect do not provide a method for hibernate to discover what sequences exist. I extended the OracleDialect class and provided an implementation of public String getQuerySequencesString(). I believe that the user_sequences view is always available in oracle, but I don't know that for certain your mileage may vary. For reference here's what mine looks like public class MyOracleDialect extends OracleDialect { public MyOracleDialect() { super(); } public String getQuerySequencesString() { return "select SEQUENCE_NAME from user_sequences"; } } --------------------------------------------------------------------- View the issue: http://opensource.atlassian.com/projects/hibernate/secure/ViewIssue.jspa?key=HB-317 Here is an overview of the issue: --------------------------------------------------------------------- Key: HB-317 Summary: attempt to recreate sequence on schema update Type: Improvement Status: Unassigned Priority: Major Project: Hibernate2 Versions: 2.1 beta 3 Assignee: Reporter: Zeehond Created: Mon, 8 Sep 2003 3:23 PM Updated: Mon, 8 Dec 2003 5:03 PM Environment: jboss 3.2.2, oracle 9i, sun jdk 1.4.2 Description: this is my code I run in application init routine: ds = new Configuration(); ds.configure(this.getClass().getClassLoader().getResource("hibernate.cfg.xml")); SchemaUpdate su = new SchemaUpdate(ds); su.execute(false); all tables are updated OK, but the following error happens: 2003-09-08 22:13:00,000 ERROR [net.sf.hibernate.tool.hbm2ddl.SchemaUpdate] Unsuccessful: create sequence hibernate_sequence java.sql.SQLException: ORA-00955: name is already used by an existing object at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:2321) at oracle.jdbc.oci8.OCIDBAccess.executeFetch(OCIDBAccess.java:1741) at oracle.jdbc.oci8.OCIDBAccess.parseExecuteFetch(OCIDBAccess.java:1902) at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2047) at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1940) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2709) at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:796) at org.jboss.resource.adapter.jdbc.WrappedStatement.executeUpdate(WrappedStatement.java:233) at net.sf.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:120) seems like Hibernate can't define whether the sequence already exists --------------------------------------------------------------------- JIRA INFORMATION: This message is automatically generated by JIRA. If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa If you want more information on JIRA, or have a bug to report see: http://www.atlassian.com/software/jira |