当前位置: 首页 > 知识库问答 >
问题:

如何使用Eclipse Link/JPA获取表中列名、列数据类型

华谭三
2023-03-14

我在JPA上工作。我的要求是从表中获取列名和数据类型。我有查询来做这件事,但这些是原生查询的。如果我使用这些原生查询,它将支持任何数据库,如Oracle,MySql,.......

现在我正在使用MySql和JPA工作得很好。

下面的查询用于获取表列名

SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE  TABLE_SCHEMA = 'SchemaName'
AND   TABLE_NAME = 'TableName';   

我使用JPA中的createNativeQuery()执行了上面的查询。它将支持所有的数据库。如果没有,我怎么能做到这一点。非常感谢。

共有1个答案

邢雨华
2023-03-14

在Oracle中,您可以使用all_tab_columns表,在MS SQL server和MySQL中,您可以使用information_schema.columns表来获取有关表和列的信息。

SELECT * FROM ALL_TAB_COLUMNS 
WHERE  OWNER = 'SchemaName' AND TABLE_NAME = 'TableName';
 类似资料:
  • 我使用Spring引导,Spring数据JPA,我正在寻找解决方案,以获得给定表的所有列名。但没能按我的要求找到 不需要本机查询的解决方案。正在寻找使用spring数据抽象的通用解决方案。 我可以使用普通java获取列名,但我想使用spring数据JPA获取它们。

  • 本文向大家介绍如何获取MySQL表列的数据类型?,包括了如何获取MySQL表列的数据类型?的使用技巧和注意事项,需要的朋友参考一下 您可以在“ information_schema.columns”的帮助下获取MySQL表列数据类型。 语法如下- 要了解上述语法,让我们首先创建一个表- 应用以上语法获取MySQL列数据类型。查询如下- 以下是输出- 如果需要,请在数据类型之前的输出中也包括列名称。

  • 问题内容: 如何获得特定表中的列名列表? IE。 火鸟表: 得到这样的列表: 问题答案: 如果要获取特定表中的列名列表,则这是您需要的sql查询: 我在firebird 2.5中尝试过此方法,并且可以正常工作。 顺便说一句,YOUR-TABLE-NAME周围的单引号是必需的

  • 问题内容: 自从我上次使用1.4.X版本以来,我一直在尝试更新有关J​​ava的知识…我正在尝试使用1.6.0,尤其是Java Persistence API(2.0)。 我设法创建了一个实体类。因为我能够存储和检索数据,所以它正在工作。 但是我无所事事,当我决定用表的列名填充JList时并没有成功… 这是一个简单的类,看起来像: 有没有办法检索列名? 我找到了这个帖子。似乎是一个有效的解决方案,

  • 我有一个简单的实例定义如下: 它看起来是这样的: 是否有任何方法只获取和的值?我尝试了以下操作: 但是获得错误键错误:('is_events_1','is_events_2')。

  • 如果我有一个包含以下列的数据帧: 我想能够说:这里是一个数据框,给我一个列的列表,它是类型Object还是类型DateTime? 我有一个将数字(Float64)转换为两位小数的函数,我想使用这个特定类型的dataframe列列表,并通过这个函数将它们全部转换为2dp。 也许 吧: