pl/sql スクリプト内で呼び出すにはどうすればよいですか?
SELECT d.device_id,
d.state_id,
ds.distributor
INTO a1, b1, c1
FROM device_t d,
device_smartcard_t ds
WHERE d.poid_id0 = ds.obj_id0
AND d.device_id = e1.device_id;
質問は非常にあいまいですが、PL / SQLブロック内のこれらの値にアクセスしたい場合は、次のことができます。
declare
a1 device_t.device_id%type;
b1 device_t.state_id%type;
c1 device_smartcard_t.distributor%type;
begin
select d.device_id, d.state_id, ds.distributor
into a1, b1, c1
from device_t d
join device_smartcard_t ds
on d.poid_id0 = ds.obj_id0
and d.device_id = E1.device_id; -- (What's E1?)
-- Do what you like with a1, b1 and c1
end;
/
私はあなたのクロスジョインをインナージョインに変える自由を取りました。クエリが複数の結果を返すか、結果を返さない場合、Oracleは例外をスローすることに注意してください。exception
句を使用してこれを処理しTOO_MANY_ROWS
、NO_DATA_FOUND
例外をキャッチできます。