Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在不使用实体类的情况下使用EclipseLink与表交互?_Java_Mysql_Sql_Jpa_Eclipselink - Fatal编程技术网

Java 如何在不使用实体类的情况下使用EclipseLink与表交互?

Java 如何在不使用实体类的情况下使用EclipseLink与表交互?,java,mysql,sql,jpa,eclipselink,Java,Mysql,Sql,Jpa,Eclipselink,我的项目中没有实体类。我的要求是,当我基于模式连接到数据库时,我必须从该模式获取所有表的名称 这里我有一个模式“companydb”,有5个表。下面是我从特定模式检索表总数的代码 这里可能会出现“查询”异常。这里的查询不太好,所以我必须使用什么类型的查询,以及如何获取表列表 persiatance.xml <?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/p

我的项目中没有实体类。我的要求是,当我基于模式连接到数据库时,我必须从该模式获取所有表的名称

这里我有一个模式“companydb”,有5个表。下面是我从特定模式检索表总数的代码

这里可能会出现“查询”异常。这里的查询不太好,所以我必须使用什么类型的查询,以及如何获取表列表

persiatance.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemalocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
version="1.0">
<persistence-unit name="reports" transaction-type="RESOURCE_LOCAL">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <properties>

        <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/reports" />
        <property name="javax.persistence.jdbc.user" value="root" />
        <property name="javax.persistence.jdbc.password" value="root" />
        <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" />
    </properties>
</persistence-unit>
</persistence>    
例外情况是:

java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Syntax error parsing the query [SELECT * FROM companydb], line 1, column 7: unexpected token [*].
Internal Exception: NoViableAltException(93@[330:16: ( DISTINCT )?])

我该如何过来。

使用本机查询从您的模式中获取表列表

Query query = entityManager.createNativeQuery("SHOW TABLES FROM companydb");
Query query = entityManager.createNativeQuery("SHOW TABLES FROM companydb");