postgresql7.1
select case when exists (select 1
from acs_object_types t1, acs_object_types t2, group_type_rels g
where g.group_id = :group_id
and t2.object_type <> g.rel_type
and t1.object_type in ('membership_rel','composition_rel')
and t2.tree_sortkey between t1.tree_sortkey and tree_right(t1.tree_sortkey)
)
then 1 else 0 end
select case when exists (select 1
from acs_object_types t1, acs_object_types t2, group_type_rels g
where g.group_type = :group_type
and t2.object_type <> g.rel_type
and t1.object_type in ('membership_rel','composition_rel')
and t2.tree_sortkey between t1.tree_sortkey and tree_right(t1.tree_sortkey)
)
then 1 else 0 end
select acs_rel_type__drop_type(:rel_type, 'f')
select acs_rel_type__create_type (
:rel_type,
:pretty_name,
:pretty_plural,
:supertype,
:table_name,
'rel_id',
:package_name,
:object_type_one,
:role_one,
:min_n_rels_one,
:max_n_rels_one,
:object_type_two,
:role_two,
:min_n_rels_two,
:max_n_rels_two,
:composable_p
);
select acs_rel_type__create_role(:role, :pretty_name, :pretty_plural)
select acs_rel_type__drop_role(:role)