[ https://issues.apache.org/jira/browse/OPENJPA-1818?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Donald Woods updated OPENJPA-1818: ---------------------------------- Patch Info: [Patch Available] Fix Version/s: 2.1.0 Assignee: Donald Woods > SQL-Syntax errors with h2 > ------------------------- > > Key: OPENJPA-1818 > URL: https://issues.apache.org/jira/browse/OPENJPA-1818 > Project: OpenJPA > Issue Type: Bug > Components: sql > Affects Versions: 2.0.0 > Environment: h2 Version: 1.2.124 > Reporter: Stefan Wokusch > Assignee: Donald Woods > Fix For: 2.1.0 > > > I have an Entity with an attribute named "order". While creating the table > for the Entity there is thrown an error. Renaming the "order"-attribute fixed > this error. > Ill tested this with MySql and H2. With Mysql the "order"-attribute was no > problem, h2 thrown that error. > I dont know where the exact problem is, ill hope im right here :) > Workarround: > Rename the attribute. > Here the Stacktrace: > Caused by: <openjpa-2.0.0-r422266:935683 nonfatal general error> > org.apache.openjpa.persistence.PersistenceException: Syntax Fehler in SQL > Befehl "CREATE TABLE TABBARITEMENTITY (ID INTEGER NOT NULL, ORDER[*] INTEGER, > REF VARCHAR(255), TEXT VARCHAR(255), PRIMARY KEY (ID)) "; erwartet > "identifier" > Syntax error in SQL statement "CREATE TABLE TABBARITEMENTITY (ID INTEGER NOT > NULL, ORDER[*] INTEGER, REF VARCHAR(255), TEXT VARCHAR(255), PRIMARY KEY > (ID)) "; expected "identifier"; SQL statement: > CREATE TABLE TabbarItemEntity (id INTEGER NOT NULL, order INTEGER, ref > VARCHAR(255), text VARCHAR(255), PRIMARY KEY (id)) [42001-124] {stmnt > 20639876 > CREATE TABLE TabbarItemEntity (id INTEGER NOT NULL, order INTEGER, ref > VARCHAR(255), text VARCHAR(255), PRIMARY KEY (id)) } [code=42001, > state=42001] > at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:556) > at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:456) > at > org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:155) > at > org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:159) > at > org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:117) > at > org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:199) > at > org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156) > at > org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:213) > at > org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:151) > at > org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:57) > at > de.joe.core.server.config.ModulePersistenceApiOpenJPA.configure(ModulePersistenceApiOpenJPA.java:48) > at com.google.inject.AbstractModule.configure(AbstractModule.java:59) > at > com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:223) > at com.google.inject.spi.Elements.getElements(Elements.java:101) > at > com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:135) > at > com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:114) > ... 22 more > Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: Syntax Fehler > in SQL Befehl "CREATE TABLE TABBARITEMENTITY (ID INTEGER NOT NULL, ORDER[*] > INTEGER, REF VARCHAR(255), TEXT VARCHAR(255), PRIMARY KEY (ID)) "; erwartet > "identifier" > Syntax error in SQL statement "CREATE TABLE TABBARITEMENTITY (ID INTEGER NOT > NULL, ORDER[*] INTEGER, REF VARCHAR(255), TEXT VARCHAR(255), PRIMARY KEY > (ID)) "; expected "identifier"; SQL statement: > CREATE TABLE TabbarItemEntity (id INTEGER NOT NULL, order INTEGER, ref > VARCHAR(255), text VARCHAR(255), PRIMARY KEY (id)) [42001-124] {stmnt > 20639876 > CREATE TABLE TabbarItemEntity (id INTEGER NOT NULL, order INTEGER, ref > VARCHAR(255), text VARCHAR(255), PRIMARY KEY (id)) } [code=42001, > state=42001] > at > org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:257) > at > org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:241) > at > org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:70) > at > org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:951) > at > org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:136) > at > org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1200) > at > org.apache.openjpa.jdbc.schema.SchemaTool.createTable(SchemaTool.java:956) > at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:533) > at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:348) > at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:325) > at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:504) > ... 37 more -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.