drop table if exists Link; drop table if exists Node; drop type if exists EN_NodeType; create type EN_NodeType as enum ( 'EN_JUNCTION', 'EN_RESERVOIR', 'EN_TANK' ); drop type if exists EN_LinkType; create type EN_LinkType as enum ( 'EN_CVPIPE', 'EN_PIPE', 'EN_PUMP', 'EN_PRV', 'EN_PSV', 'EN_PBV', 'EN_FCV', 'EN_TCV', 'EN_GPV' ); create table Node ( Id varchar(32) primary key, Type EN_NodeType not null, Coord point not null default(point(0.0, 0.0)), Elevation numeric not null default(0.0) ); create table Link ( Id varchar(32) primary key, Type EN_LinkType not null, FromNode varchar(32) not null references Node(Id), ToNode varchar(32) not null references Node(Id) );