【问题标题】:Could someone explain what this piece of code means in Oracle PL/ SQL有人可以解释这段代码在 Oracle PL/SQL 中的含义吗
【发布时间】:2021-06-29 18:02:03
【问题描述】:
return split_tbl as
splitted split_tbl := split_tbl();
i pls_integer := 0;
list_ varchar2(32767) := list;

在许多无法理解它如何工作的代码块中看到了这一点,有人可以解释它的含义和它是如何工作的吗?

【问题讨论】:

  • 哪一行你不明白?
  • @WernfriedDomscheit 这一个 split_tbl := split_tbl();

标签: oracle plsql


【解决方案1】:

看起来像一个函数的一部分

  • 返回自定义数据类型 - split_tbl(有人使用 CREATE TYPE split_tbl ... 创建它)
  • splitted 是本地声明的变量。它的数据类型是split_tbl(我相信该函数返回splitted)并且是初始化的(这就是:= split_tbl()所做的)
  • i 是另一个局部变量,它的数据类型是 pls_integer 并被初始化为 0 (这样,如果您稍后将其用作例如 i := i + 1 您不会将 1 添加到 NULLNULL)。
  • list_ 是一个varchar2 数据类型变量,它的大小是允许的最大值(32767 个字符或字节),并被初始化为list 这是一些东西,但我们不知道是什么李>

【讨论】:

  • 为什么只有 split_tbl 后面的括号而不是 := list 后面的括号? @Littlefoot
  • 因为 SPLIT_TBL 是一个集合。 LIST 是一个字符串(varchar2 数据类型)。
  • 谢谢!是否有任何参考/文档可以找到更多信息? @Littlefoot
  • 当然;任何 Oracle 数据库版本的 SQL 参考书和 - 对于集合 - PL/SQL 参考。
  • 如果答案对您有所帮助,请接受。接受有用的答案有助于未来的提问者面临相同或相似的问题。请不要将成功回答的问题视为未决问题。如果它没有成功回答旅游问题,那么您剩下的问题是什么。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-06-14
  • 2020-02-08
  • 2020-02-04
  • 2015-09-14
  • 1970-01-01
  • 2016-08-17
相关资源
最近更新 更多