我在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?