内部异常:java.sql.SQLSyntaxErrorException:用户缺少权限或找不到对象:序列,但我使用MySQL

内部异常:java.sql.SQLSyntaxErrorException:用户缺少权限或找不到对象:序列,但我使用MySQL,java,mysql,jpa,jakarta-ee,Java,Mysql,Jpa,Jakarta Ee,我对J2EE非常陌生。 我想将一个对象持久化到MySQL数据库中,但异常与HyperSQL有关 这是我的persistence.xml文件 <?xml version="1.0" encoding="UTF-8"?> 似乎必须在应用服务器的管理面板/配置文件(取决于应用服务器)中定义数据源 因此,在我的TomEE中,您必须在tomedir/conf/TomEE.xml中执行此操作 <Resource id="learnDB" type="DataSource">

我对J2EE非常陌生。 我想将一个对象持久化到MySQL数据库中,但异常与HyperSQL有关

这是我的persistence.xml文件

<?xml version="1.0" encoding="UTF-8"?>

似乎必须在应用服务器的管理面板/配置文件(取决于应用服务器)中定义数据源

因此,在我的TomEE中,您必须在tomedir/conf/TomEE.xml中执行此操作

  <Resource id="learnDB" type="DataSource">
    JdbcDriver com.mysql.jdbc.Driver
    JdbcUrl jdbc:mysql://localhost:3306/learndb
    UserName root
    Password *****
    JtaManaged true
  </Resource>

JdbcDriver com.mysql.jdbc.Driver
JdbcUrl jdbc:mysql://localhost:3306/learndb
用户名根
密码*****
真的吗
并将数据库的libaryjar文件放到de/lib文件夹中

在persistence.xml文件中定义jta数据源。这是您的资源id的名称

 <persistence-unit name="learnPU">
        <jta-data-source>learnDB</jta-data-source>
        <exclude-unlisted-classes>false</exclude-unlisted-classes>
        <properties>
            <property name="javax.persistence.schema-generation.database.action" value="drop-and-create"/>
        </properties>
    </persistence-unit>

learnDB
错误的
Caused by: org.hsqldb.HsqlException: user lacks privilege or object not found: SEQUENCE
at org.hsqldb.error.Error.error(Unknown Source)
at org.hsqldb.error.Error.error(Unknown Source)
at org.hsqldb.SchemaManager.getTable(Unknown Source)
at org.hsqldb.ParserDQL.readTableName(Unknown Source)
at org.hsqldb.ParserDQL.readRangeVariableForDataChange(Unknown Source)
at org.hsqldb.ParserDML.compileUpdateStatement(Unknown Source)
at org.hsqldb.ParserCommand.compilePart(Unknown Source)
at org.hsqldb.ParserCommand.compileStatement(Unknown Source)
at org.hsqldb.Session.compileStatement(Unknown Source)
at org.hsqldb.StatementManager.compile(Unknown Source)
at org.hsqldb.Session.execute(Unknown Source)
... 127 more
  <Resource id="learnDB" type="DataSource">
    JdbcDriver com.mysql.jdbc.Driver
    JdbcUrl jdbc:mysql://localhost:3306/learndb
    UserName root
    Password *****
    JtaManaged true
  </Resource>
 <persistence-unit name="learnPU">
        <jta-data-source>learnDB</jta-data-source>
        <exclude-unlisted-classes>false</exclude-unlisted-classes>
        <properties>
            <property name="javax.persistence.schema-generation.database.action" value="drop-and-create"/>
        </properties>
    </persistence-unit>