Как преобразовать функцию из Oracle в Postgres? - PullRequest
0 голосов
/ 08 сентября 2018

У меня есть эти таблицы и типы в Oracle:

CREATE OR REPLACE TYPE edificioty AS OBJECT(
 idf INT)

CREATE OR REPLACE TYPE lettorety AS OBJECT(
pidreader_id NUMBER,
descrizione VARCHAR2(100),
edificio REF edificioty)

CREATE TABLE EDIFICIO OF EDIFICIOTY(IDF PRIMARY KEY);

CREATE TABLE LETTORE OF LETTORETY(PIDREADER_ID PRIMARY KEY);

Мне нужно использовать их в PostreSQL, поэтому я преобразовал их следующим образом (надеюсь, они правы):

CREATE TYPE edificioty AS(
 idf INTEGER)

CREATE TYPE lettorety AS(
pidreader_id INTEGER,
descrizione VARCHAR(100),
edificio edificioty)

CREATE TABLE EDIFICIO OF EDIFICIOTY(PRIMARY KEY(IDF));

CREATE TABLE LETTORE OF LETTORETY(PRIMARY KEY(PIDREADER_ID));

Существует также эта функция Oracle

create or replace procedure populate_lettore
as
    edificio_selezionato ref edificioty;
    cursor c is select ref(e) from edificio e;
begin
    open c;
    loop
        fetch c into edificio_selezionato;
        exit when c%notfound;

        insert into lettore 
        values(lettorety(0,'Descrizione...',edificio_selezionato));
    end loop;
    close c;
end;

Как я могу преобразовать его в Postgres?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...