0

我正在寻找某种方式来迭代 PL/SQL 行,但我没有得到任何适当的结果。

例如,如果我有一个看起来像这样的 PL/SQL 行, row(first_name,last_name)并且我想在不知道该行的情况下使用 PL/SQL 打印名字和姓氏,即我不知道该行的外观,所以我需要某种看起来像这样的代码

FOR column IN My_Row  --some way to iterate through the row.
LOOP
    PRINT column...   --do my stuff, in this example
END LOOP;
4

1 回答 1

1

如果您知道该行所在的表的名称,那么您可以从中获取列的名称ALL_TAB_COLUMNS。您可以围绕它构建动态 SQL。请参阅这篇 Ask Tom 文章,了解以下内容:Referencing %rowtype variables without using column names

根据您的评论,您将浏览所有表格,以便您可以使用ALL_TABLES它们来获取所有名称。尽管请记住,这ALL_TABLES是您的登录名可以访问的DBA_TABLES所有表,而数据库中的每个表USER_TABLES都是您的用户拥有的表。

于 2012-02-15T10:46:21.387 回答