如何执行 PL/SQL 自定义对象类型更新

发布于 2024-10-11 18:12:05 字数 293 浏览 1 评论 0原文

我是 PL/SQL 编码新手,有以下问题:

我有表 Foo:

Foo:
  foo1 number     pk
  foo2 varchar2
  foo3 varchar2
  foo4 Bar

bar 是一个包含属性的自定义数组对象:

Bar:

bar1 varchar2

bar2 varchar2

bar3 varchar2

如何编写更新 foo4 的更新语句?

我无法正确理解语法:/

I'm new to PL/SQL coding and I have the following question:

I have table Foo:

Foo:
  foo1 number     pk
  foo2 varchar2
  foo3 varchar2
  foo4 Bar

bar is a custom-array object which holds attributes:

Bar:

bar1 varchar2

bar2 varchar2

bar3 varchar2

How do I write a update statement that updates the foo4?

I can't get the syntax right : /

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

抚笙 2024-10-18 18:12:05

不确定您是否尝试使用 SQL 语句来执行此操作以及这是否可能,但您可以通过 PL/SQL 执行此操作,如下所示(在 Oracle 10g 上测试):

Declare
  v_Bar Bar;
Begin
  v_Bar := Bar
            (
              'a',
              'b',
              'c'
            );   
  --
  Update Foo
     Set foo4 = v_Bar
   Where foo1 = Id;            
  --                          
End;  

HTH

Not sure if you were trying to do it with an SQL statement and if that is possible at all, but you can do it via PL/SQL, like this (tested on Oracle 10g):

Declare
  v_Bar Bar;
Begin
  v_Bar := Bar
            (
              'a',
              'b',
              'c'
            );   
  --
  Update Foo
     Set foo4 = v_Bar
   Where foo1 = Id;            
  --                          
End;  

HTH

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文