gpt4 book ai didi

stored-procedures - 如何在 PL/SQL 中调用带有行类型文字作为参数的过程?

转载 作者:行者123 更新时间:2023-12-04 08:58:02 24 4
gpt4 key购买 nike

假设我有一个表和一个接受表行类型的一个参数的过程:

CREATE TABLE t (a NUMBER, b NUMBER);

CREATE PROCEDURE p (x t%ROWTYPE) IS
BEGIN
NULL;
END;

我可以使用 rowtype 文字调用该过程,即不显式创建 rowtype 变量(或至少不显式列出和分配它的每个字段)吗?以下两种方法都会产生以下错误:

p(1, 2);
p((1, 2));

PLS-00306: wrong number or types of arguments in call to 'P'

最佳答案

您还可以从游标循环构造记录:

for r in (
select 1, 2 from dual
)
loop
p(r);
end loop;

不幸的是,PL/SQL 记录只是简单的结构,不像对象类型那样带有构造函数。 (我希望他们这样做。)

关于stored-procedures - 如何在 PL/SQL 中调用带有行类型文字作为参数的过程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33777381/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com