在我的 PL/SQL 脚本中,当 JUSTIFIC_REC 表示联接时,如何声明它?
SELECT *
INTO JUSTIFIC_REC
FROM TABLE1 A
INNER JOIN TABLE2 B
ON A.ID_JUSTIFIC = B.ID_JUSTIFIC ;
Run Code Online (Sandbox Code Playgroud)
我想要的只是将一个串联行插入到 TABLE3 中:
INSERT INTO MOF_OUTACCDTL_REQ VALUES(
JUSTIFIC_rec.ENTRY_COMMENTS || ' ' || JUSTIFIC_rec.DESCRIPTION );
Run Code Online (Sandbox Code Playgroud)
我的脚本开头的 JUSTIFIC_REC 声明应该如何?
如果不是 INNER JOIN ,我会写类似: JUSTIFIC_rec TABLE1%ROWTYPE;
小智 5
如果我理解正确,您可以尝试使用这样的游标行类型(不确定这是否是您为带有连接的选择声明变量类型的意思):
set serveroutput on;
declare
cursor cur is
SELECT ENTRY_COMMENTS, DESCRIPTION
FROM TABLE1 A
INNER JOIN TABLE2 B
ON A.ID_JUSTIFIC = B.ID_JUSTIFIC ;
justific_rec cur%ROWTYPE;
begin
open cur;
loop
fetch cur into justific_rec;
exit when cur%notfound;
dbms_output.put_line(justific_rec.entry_comments || ' ' || justific_rec.description);
end loop;
close cur;
end;
Run Code Online (Sandbox Code Playgroud)