0
我們正在從ORACLE到POSTGRESQL進行大型轉換,我試圖定義所有我們應該改變的東西,而且好像PostgreSQL中沒有DBMS_SQL。 我知道我可以用光標做所有事情,但DBMS_SQL非常適合重複使用代碼並在不同代碼之間移動光標。PostgreSQL中是否有與ORACLE DBMS_SQL等價的東西?
我們正在從ORACLE到POSTGRESQL進行大型轉換,我試圖定義所有我們應該改變的東西,而且好像PostgreSQL中沒有DBMS_SQL。 我知道我可以用光標做所有事情,但DBMS_SQL非常適合重複使用代碼並在不同代碼之間移動光標。PostgreSQL中是否有與ORACLE DBMS_SQL等價的東西?
的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
...
有些文檔:
...你能在函數之間傳遞'refcursor'對象。 –
嗨, 感謝您的迴應,但我正在尋找一些東西來取代Package中的dbms_sql程序。 該軟件包的程序如下所示:TO_REFCURSOR或TO_CURSOR_NUMBER。 一般來說,dbms_sql更適合重複使用代碼,並且我無法從pgsql遊標中獲取它。 – BlackMamaba