问题标签 [oracle-objects]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2013 浏览

jpa - JPA 中的 Oracle 数据库对象类型导入

有没有办法在 JPA 中导入 oracle 定义的对象类型。我在数据库中定义了一个复杂的对象:

此对象类型比在数据库表中使用。

0 投票
1 回答
6558 浏览

hibernate - 如何使用 Spring Data JPA 在实体中映射 Oracle 对象类型?

这个问题与使用 Spring Data JPA 在实体中映射 Oracle 对象类型特别相关。另一个问题无助于详细解释问题。

所以下面是详细信息:

我在 Spring Data JPA Reference 和任何其他搜索结果中都找不到与使用 Spring Data JPA 在实体对象中映射 Oracle 对象类型相关的信息。

设想:

假设我有以下date_typ Oracle 类型。

现在在 oracle 数据库表中,比如 REGISTRATION,其中一列是上面的 date_typ

现在,我需要在实体中映射上述列

如何在 Spring JPA 中将 映射requestedDateDATE_TYP(oracle 对象类型)的REQUESTEDDATE列?

注意:我使用 Hibernate 作为持久性提供程序。

0 投票
1 回答
674 浏览

oracle - 通过部分填充从 Oracle 过程返回对象类型?

我在 Oracle 中创建了一个对象类型,如下所示:

现在我想编写一个过程,它将此对象类型作为输出参数返回给调用 Java 代码。基本上有几个表存储列,类似OLD_DATA_VAL1...OLD_DATA_VAL20DATA_VAL1...DATA_VAL120,另一个表具有列NM_DATA_COL1...NM_DATA_COL20,并且取决于各种用例,只有 3 或 5 个或任意数量的列将具有值,而其他列将为空。例如OLD_DATA_VAL1,OLD_DATA_VAL2,OLD_DATA_VAL3,DATA_VAL1,DATA_VAL2,DATA_VAL3,NM_DATA_COL1,NM_DATA_COL2,NM_DATA_COL3,有值和其他列为空。我创建了一个元表,它会给我逗号分隔的列名。

现在,当我尝试使用类型或游标时,问题是由于未填充所有值,因此会引发错误。我的程序是这样的:

但它会在类型的情况下引发如下所示的 Oracle 错误 -

一些 Oracle Guy 建议使用 Global Temporary Table (GTT),但我相信它们在所有会话中都很常见,在这里不可行。所以,如果我想部分填充,但我不确定这是否是最好的情况,或者可以用对象完成一些事情,比如将未使用的值部分初始化为 null。

更新

从 2 个语句中打印 dbms_ouput 以使事情更清晰

输出1:

输出2:

主要问题- 与对象类型中的列数相比,动态选择的列数更少。(见输出 1,每个也可以有 3 个)

更新 2

现在我主要关心的是如何从由可变数量的选定列形成的动态 sql 中获取值。

使用下面的查询我能够获得列标题,但不知何故无法获得 col 值。我的查询将只返回一行-

0 投票
1 回答
44 浏览

xml - 使用对象类型形成 XML 数据

我需要使用 Oracle 对象类型生成 XML,并且元素将具有属性。复杂之处在于元素和属性都将具有如下值

员工> 姓名 id=100>Aaron /ename> /employee>

要求是仅使用对象类型来实现这一点,而不是使用 xmlelement,xmlattributes 因为实际场景包含大量列。

请帮忙写SQL查询

0 投票
1 回答
1017 浏览

sql - 获取嵌套表的引用值

我正在尝试编写一个查询以获取 IP 地址,该地址是对另一个嵌套表的引用的表的嵌套表的引用。

以下是表格:

这里的图片显示了我的数据表

我的查询应该检索 ADRIP 等于 = '192.168.2.'4 的 nomDept ;

先感谢您

0 投票
1 回答
99 浏览

oracle - Oracle 对象类型

在我的讲座中,我了解了提到COLUMN OBJECTROW OBJECT的ORACLE OBJECT TYPES。我在讲座中没有找到关于对象类型的足够详细信息。我用谷歌搜索了至少一篇关于这些对象类型的文章,但我找不到任何提到COLUMN OBJECTROW OBJECT的文章。

这可能是一个初学者的问题。有人请解释或提供文章链接吗?

0 投票
2 回答
2252 浏览

java - JDBC 与 Oracle RECORD、TABLE 和 OBJECT 类型一起使用

如何在 Jdbc 中检索 Oracle 集合类型。我搜索了很多,但没有找到任何答案。下面是我的存储过程工作正常:

下面是运行存储过程的 Java 代码:

我在第 3/4 行收到的错误:

我还尝试运行没有记录类型的新存储过程,但存在相同的错误:

我在某处发现可以使用数组描述符或结构描述符,但如何在 registerOutParameter 中使用它,没有任何文档/站点解释。我被困在这里。

0 投票
2 回答
260 浏览

java - 如何在 oracle 存储过程中返回自己的类型数据?

我在 oracle 中为一个过程创建了一个类型数据。

程序:

和:

当我在匿名块中使用这种类型的数据并且它起作用时。

块结果:

但是当我在存储过程中使用它来返回它时,我得到一个错误。

程序:

错误:

为什么它不返回值?

0 投票
1 回答
121 浏览

oracle - 如何知道触发器中 :new 的类型?

假设我有这些虚拟类型和这些类型的表:

让我们假设我有不同类型的操作:

我想在一个表上创建一个触发器,Operation_TY它会告诉我操作成本是多少。要获得这些信息,当在表中插入操作时,我想检查操作的类型,然后进入tariff_plan合约以查找操作的价格。

我试过:

这不起作用,我想我错过了一些东西。这个操作应该如何进行?

我在这里留下一个小脚本来随机填充表格:

0 投票
1 回答
137 浏览

oracle - 如何在oracle中将对象类型的对象作为参数传递

这是关于如何在 oracle 中将对象类型作为参数传递的下一级问题。

我的问题是在相同的上下文中,主子嵌套级别关系更深一些,它是对象中的对象。而且我没有找到任何方法从 PL-SQL 调用这样的过程。

让我们修改上述问题中给出的示例,如下所示:


创建对象和类型:


为需求创建和插入语句:


程序示例代码:


由于这是从 Java 代码调用的,因此他们可以使用 in 对象创建对象。我不需要从 PL-SQL 端调用它,我就得救了。

现在,我的问题是如何从 PL-SQL 调用这样的过程?我想为 Select 语句返回的记录调用此过程。基本上我需要将这些值存储在 callbck 类型的变量中。