在PostgreSQL中有没有与ORACLE DBMS_SQL相同的东西?

时间:2017-07-31 19:35:55

标签: oracle postgresql cursor dynamic-sql equivalent

我们正在进行从ORACLE到POSTGRESQL的大转变,并且我试图定义我们应该更改的所有内容,并且看起来PostgreSQL中没有DBMS_SQL。 我知道我可以用Cursors做所有的事情,但DBMS_SQL非常适合代码重用和在不同代码之间移动游标。

1 个答案:

答案 0 :(得分:1)

DBMS_SQL的一部分可以用动态游标或动态SQL替换:

DECLARE r record;
BEGIN
  FOR r IN EXECUTE 'SELECT ...'
  LOOP
    ...

DECLARE
  c1 refcursor;
  r record;
BEGIN
  OPEN c1 FOR EXECUTE 'SELECT ...'
  FOR r IN c1
  LOOP
    ...

一些文档: