如何调用pl / sql脚本中的表值?

时间:2013-03-12 10:07:01

标签: sql oracle plsql

如何在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; 

1 个答案:

答案 0 :(得分:1)

您的问题非常模糊,但如果您想要访问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_ROWSNO_DATA_FOUND例外。