我用的是ORACLE8 I和PB7,如果想在ORACLE 中建立一个存储过程,将多条记录输出。那么在PB中如何调用该存储过程并得到返回值呢?
另外,在PB中常有DECLARE AA CURSOR FOR SELECT A,B FROM 表 where ...的写法,
然后再OPEN AA 并FETCH AA INTO :S1,:S1;,这种写法和调用一个ORACLE存储过程乡比,哪一个效率更高呢?因为我们的数据库在INTERNET上,所以需要尽量减少网络开销
...全文
985打赏收藏
怎样写这个存储过程?
我用的是ORACLE8 I和PB7,如果想在ORACLE 中建立一个存储过程,将多条记录输出。那么在PB中如何调用该存储过程并得到返回值呢? 另外,在PB中常有DECLARE AA CURSOR FOR SELECT A,B FROM 表 where ...的写法, 然后再OPEN AA 并FETCH AA INTO :S1,:S1;,这种写法和调用一个ORACLE存储过程乡比,哪一个效率更高呢?因为我们的数据库在INTERNET上,所以需要尽量减少网络开销
我现在已经可以在PB中调用该存储过程了,实际上这个存储过程是输出一个结果集,在PB中EXECUTE成功之后,如果要看详细数据,还要在WHILE,LOOP循环里进行FETCH,而每次FETCH都将会存在网络方面的通信。所以,我认为这样的效果和在PB里直接DECALRE AA CURSOR FOR SELECT 差不多。也就是说在返回结果集方面,写不写存储过程无关紧要。大家认为对吗