请帮忙。
我试过这个,我不知道如何继续。我需要为此提供一个 select into 语句。
TYPE ADDR_DATA IS TABLE OF ADDRESS%ROWTYPE
INDEX BY BINARY_INTEGER;
选择是,(只会出现一条记录),我该如何进一步使用它?
SELECT
* INTO ADDR_DATA
FROM
ADDRESS
WHERE
ADDR_DATA.PERSON_ID = 83;
看起来您正在尝试批量收集数据,这意味着您需要这样做;
DECLARE
v_address_data ADDR_DATA;
BEGIN
SELECT
* BULK COLLECT INTO v_address_data
FROM
ADDRESS
WHERE
ADDR_DATA.PERSON_ID = 83;
END;
另一方面,你正在寻找(我认为)只有一行 - id=83
这意味着你想要类似的东西:
DECLARE
v_addrss ADDRESS%ROWTYPE;
BEGIN
SELECT
* INTO v_addrss
FROM
ADDRESS
WHERE
ADDR_DATA.PERSON_ID = 83;
END;