rxue / dictionary

Practice in Java EE
1 stars 0 forks source link

ditionary/jpa : continue redesign: adaptation of unidirectional @OneToMany (1 lexical item to many explanations) #130

Closed rxue closed 8 months ago

rxue commented 8 months ago

Sequence cannot be found:

Caused by: java.sql.SQLSyntaxErrorException: (conn=5) Table 'dictionary.explanation_id_seq' doesn't exist
  at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:282)
  at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:370)
  at org.mariadb.jdbc.message.ClientMessage.readPacket(ClientMessage.java:134)
  at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:883)
  at org.mariadb.jdbc.client.impl.StandardClient.readResults(StandardClient.java:822)
  at org.mariadb.jdbc.client.impl.StandardClient.readResponse(StandardClient.java:741)
  at org.mariadb.jdbc.client.impl.StandardClient.execute(StandardClient.java:665)
  at org.mariadb.jdbc.Statement.executeInternal(Statement.java:956)
  at org.mariadb.jdbc.Statement.execute(Statement.java:1082)
  at org.mariadb.jdbc.Statement.execute(Statement.java:474)
  at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:80)
  ... 22 more
rxue commented 8 months ago

Error resovled, but encountered new error:

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "INSERT INTO explanation (id, lexical_item_id, creation_date, last_update_time, language, partofspeech, explanation) VALUES (NEXTVAL(explanation_id_seq), @last_lexical_item_id, '2022-04-17 00:00:00', @current_dtime, 'en','N','the act of taking')" via JDBC [(conn=5) Incorrect integer value: 'N' for column `dictionary`.`explanation`.`partOfSpeech` at row 1]
    at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:94)
    at org.hibernate.tool.schema.internal.Helper.applySqlString(Helper.java:233)
    at org.hibernate.tool.schema.internal.Helper.applyScript(Helper.java:255)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applyImportScript(SchemaCreatorImpl.java:626)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applyImportSources(SchemaCreatorImpl.java:577)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:184)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:142)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:118)
    at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:228)
    at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.lambda$process$5(SchemaManagementToolCoordinator.java:145)
    at java.base/java.util.HashMap.forEach(HashMap.java:1421)
    at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:142)
    at org.hibernate.boot.internal.SessionFactoryObserverForSchemaExport.sessionFactoryCreated(SessionFactoryObserverForSchemaExport.java:37)
    at org.hibernate.internal.SessionFactoryObserverChain.sessionFactoryCreated(SessionFactoryObserverChain.java:35)
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:295)
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:450)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1507)
    at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:55)
    at jakarta.persistence.Persistence.createEntityManagerFactory(Persistence.java:80)
    at jakarta.persistence.Persistence.createEntityManagerFactory(Persistence.java:55)
    at rx.dictionary.jpa.Main.main(Main.java:9)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:254)
    at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.sql.SQLSyntaxErrorException: (conn=5) Incorrect integer value: 'N' for column `dictionary`.`explanation`.`partOfSpeech` at row 1
    at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:282)
    at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:370)
    at org.mariadb.jdbc.message.ClientMessage.readPacket(ClientMessage.java:134)
    at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:883)
    at org.mariadb.jdbc.client.impl.StandardClient.readResults(StandardClient.java:822)
    at org.mariadb.jdbc.client.impl.StandardClient.readResponse(StandardClient.java:741)
    at org.mariadb.jdbc.client.impl.StandardClient.execute(StandardClient.java:665)
    at org.mariadb.jdbc.Statement.executeInternal(Statement.java:956)
    at org.mariadb.jdbc.Statement.execute(Statement.java:1082)
    at org.mariadb.jdbc.Statement.execute(Statement.java:474)
    at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:80)
    ... 22 more
rxue commented 8 months ago

Error resolved, but encountered new error

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "INSERT INTO explanation (id, lexical_item_id, creation_date, last_update_time, language, partofspeech, explanation) VALUES (NEXTVAL(explanation_id_seq), @last_lexical_item_id, '2022-04-17 00:00:00', @current_dtime, 'en','N','the act of taking')" via JDBC [(conn=5) Incorrect integer value: 'N' for column `dictionary`.`explanation`.`partOfSpeech` at row 1]
    at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:94)
    at org.hibernate.tool.schema.internal.Helper.applySqlString(Helper.java:233)
    at org.hibernate.tool.schema.internal.Helper.applyScript(Helper.java:255)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applyImportScript(SchemaCreatorImpl.java:626)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applyImportSources(SchemaCreatorImpl.java:577)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:184)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:142)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:118)
    at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:228)
    at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.lambda$process$5(SchemaManagementToolCoordinator.java:145)
    at java.base/java.util.HashMap.forEach(HashMap.java:1421)
    at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:142)
    at org.hibernate.boot.internal.SessionFactoryObserverForSchemaExport.sessionFactoryCreated(SessionFactoryObserverForSchemaExport.java:37)
    at org.hibernate.internal.SessionFactoryObserverChain.sessionFactoryCreated(SessionFactoryObserverChain.java:35)
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:295)
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:450)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1507)
    at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:55)
    at jakarta.persistence.Persistence.createEntityManagerFactory(Persistence.java:80)
    at jakarta.persistence.Persistence.createEntityManagerFactory(Persistence.java:55)
    at rx.dictionary.jpa.Main.main(Main.java:9)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:254)
    at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.sql.SQLSyntaxErrorException: (conn=5) Incorrect integer value: 'N' for column `dictionary`.`explanation`.`partOfSpeech` at row 1
    at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:282)
    at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:370)
    at org.mariadb.jdbc.message.ClientMessage.readPacket(ClientMessage.java:134)
    at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:883)
    at org.mariadb.jdbc.client.impl.StandardClient.readResults(StandardClient.java:822)
    at org.mariadb.jdbc.client.impl.StandardClient.readResponse(StandardClient.java:741)
    at org.mariadb.jdbc.client.impl.StandardClient.execute(StandardClient.java:665)
    at org.mariadb.jdbc.Statement.executeInternal(Statement.java:956)
    at org.mariadb.jdbc.Statement.execute(Statement.java:1082)
    at org.mariadb.jdbc.Statement.execute(Statement.java:474)
    at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:80)
    ... 22 more
rxue commented 8 months ago

TODO

uncomment all existing INSERT statements in the insert script and make them inserted into database successfully

rxue commented 8 months ago

encountered new error

Hibernate: INSERT INTO sentence VALUES(@last_explanation_id, 'take me home, country road')
Jan 14, 2024 4:09:30 PM org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleException
WARN: GenerationTarget encountered exception accepting command : Error executing DDL "INSERT INTO sentence VALUES(@last_explanation_id, 'take me home, country road')" via JDBC [(conn=5) Table 'dictionary.sentence' doesn't exist]
org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "INSERT INTO sentence VALUES(@last_explanation_id, 'take me home, country road')" via JDBC [(conn=5) Table 'dictionary.sentence' doesn't exist]
    at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:94)
    at org.hibernate.tool.schema.internal.Helper.applySqlString(Helper.java:233)
    at org.hibernate.tool.schema.internal.Helper.applyScript(Helper.java:255)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applyImportScript(SchemaCreatorImpl.java:626)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applyImportSources(SchemaCreatorImpl.java:577)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:184)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:142)
    at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:118)
    at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:228)
    at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.lambda$process$5(SchemaManagementToolCoordinator.java:145)
    at java.base/java.util.HashMap.forEach(HashMap.java:1421)
    at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:142)
    at org.hibernate.boot.internal.SessionFactoryObserverForSchemaExport.sessionFactoryCreated(SessionFactoryObserverForSchemaExport.java:37)
    at org.hibernate.internal.SessionFactoryObserverChain.sessionFactoryCreated(SessionFactoryObserverChain.java:35)
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:295)
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:450)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1507)
    at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:55)
    at jakarta.persistence.Persistence.createEntityManagerFactory(Persistence.java:80)
    at jakarta.persistence.Persistence.createEntityManagerFactory(Persistence.java:55)
    at rx.dictionary.jpa.Main.main(Main.java:9)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:254)
    at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.sql.SQLSyntaxErrorException: (conn=5) Table 'dictionary.sentence' doesn't exist
    at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:282)
    at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:370)
    at org.mariadb.jdbc.message.ClientMessage.readPacket(ClientMessage.java:134)
    at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:883)
    at org.mariadb.jdbc.client.impl.StandardClient.readResults(StandardClient.java:822)
    at org.mariadb.jdbc.client.impl.StandardClient.readResponse(StandardClient.java:741)
    at org.mariadb.jdbc.client.impl.StandardClient.execute(StandardClient.java:665)
    at org.mariadb.jdbc.Statement.executeInternal(Statement.java:956)
    at org.mariadb.jdbc.Statement.execute(Statement.java:1082)
    at org.mariadb.jdbc.Statement.execute(Statement.java:474)
    at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:80)
    ... 22 more