cat > script <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
create t1( a1, a2 float, a3 char( 20, 1), a4 date(1), a5 bulk(20,20,20 ) );
create t2( a1, a2 float, a3 char( 20, 1), a4 date(1), a5 bulk(20,20,20 ) );

create referential constraint on t1 set a1 insert t2 set a1;
create referential constraint on t1 (a1, a2) insert t2 (a1, a2);
create referential constraint on t1 set a1, a2, a3 insert t2 set a1, a2, a3;
create referential constraint on t1 set a3, a4, a5 insert t2 set a3, a4, a5;

select tab_name, tab_refer from sys_tables where tab_name = "t1";

create referential constraint on t1 set a1 delete t2 set a1;
create referential constraint on t1 (a1, a2) delete t2 (a1, a2);
create referential constraint on t1 set a1, a2, a3 delete t2 set a1, a2, a3;
create referential constraint on t1 set a3, a4, a5 delete t2 set a3, a4, a5;

select tab_name, tab_refer from sys_tables where tab_name = "t1";

drop referential constraint on t1 set a1, a2, a3 delete t2 set a1, a2, a3;
drop referential constraint on t1 set a1 delete t2 set a1;
drop referential constraint on t1 (a1, a2) delete t2 (a1, a2);
drop referential constraint on t1 set a3, a4, a5 delete t2 set a3, a4, a5;

select tab_name, tab_refer from sys_tables where tab_name = "t1";

drop referential constraint on t1 set a1 insert t2 set a1;
drop referential constraint on t1 (a1, a2) insert t2 (a1, a2);
drop referential constraint on t1 set a1, a2, a3 insert t2 set a1, a2, a3;
drop referential constraint on t1 set a3, a4, a5 insert t2 set a3, a4, a5;

select tab_name, tab_refer from sys_tables where tab_name = "t1";

create refer check 'ref1' t1 (a1) insert t2 (a1);
create refer check 'ref2' t1 (a1, a2) insert t2 (a1, a2);
create refer check 'ref3' t1 set a1, a2, a3 delete t2 set a1, a2, a3;

select tab_name, tab_refer from sys_tables where tab_name = "t1";

drop refer check 'ref2' t1 (a1, a2) insert t2 (a1, a2);
drop refer check t1 set a1 insert t2 set a1;
drop refer check 'ref3';

select tab_name, tab_refer from sys_tables where tab_name = "t1";
drop t1;
drop t2;

create ta( a1, a2 );
create tb( b1, b2 );
create tc( c1, c2, c3, c4, c5);

create view v1 as select b2, c2 from tb, tc where b1=c1;
create view v2 as select a2, b2 from ta, v1 where a1=b2;

create refer 'v2i1' v2(a2) insert tc(c5);
create refer 'v2i2' v2(a2) insert tc set c2;

create refer 'v1i1' v1( b2, c2)  insert tc( c4, c5);
create refer 'v1i2' v1( b2, c2)  insert tc( c2, c5);

select tab_name, tab_refer from sys_tables where tab_name = "v1";
select tab_name, tab_refer from sys_tables where tab_name = "v2";

drop refer 'v2i2';
drop refer 'v2i1';
drop refer 'v1i1';
drop refer 'v1i2';

select tab_name, tab_refer from sys_tables where tab_name = "v1";
select tab_name, tab_refer from sys_tables where tab_name = "v2";

drop ta;
drop tc;
drop v1;
drop v2;
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 755 script
cat > stdout <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
* * * * * * * * * tab_name                          tab_refer

t1                                 '' 1 'a1' insert ''
                                   't2' 'a1'
                                   '' 2 'a1' 'a2' inse
                                  rt '' 't2' 'a1' 'a2'
                                   '' 3 'a1' 'a2' 'a3'
                                   insert '' 't2' 'a1'
                                   'a2' 'a3'
                                   '' 3 'a3' 'a4' 'a5'
                                   insert '' 't2' 'a3'
                                   'a4' 'a5'
* * * * * * * tab_name                          tab_refer

t1                                 '' 1 'a1' insert ''
                                   't2' 'a1'
                                   '' 2 'a1' 'a2' inse
                                  rt '' 't2' 'a1' 'a2'
                                   '' 3 'a1' 'a2' 'a3'
                                   insert '' 't2' 'a1'
                                   'a2' 'a3'
                                   '' 3 'a3' 'a4' 'a5'
                                   insert '' 't2' 'a3'
                                   'a4' 'a5'
                                   '' 1 'a1' delete ''
                                   't2' 'a1'
                                   '' 2 'a1' 'a2' dele
                                  te '' 't2' 'a1' 'a2'
                                   '' 3 'a1' 'a2' 'a3'
                                   delete '' 't2' 'a1'
                                   'a2' 'a3'
                                   '' 3 'a3' 'a4' 'a5'
                                   delete '' 't2' 'a3'
                                   'a4' 'a5'
* * * * * * * tab_name                          tab_refer

t1                                 '' 1 'a1' insert ''
                                   't2' 'a1'
                                   '' 2 'a1' 'a2' inse
                                  rt '' 't2' 'a1' 'a2'
                                   '' 3 'a1' 'a2' 'a3'
                                   insert '' 't2' 'a1'
                                   'a2' 'a3'
                                   '' 3 'a3' 'a4' 'a5'
                                   insert '' 't2' 'a3'
                                   'a4' 'a5'
* * * * * * * tab_name                          tab_refer

t1
* * * * * * tab_name                          tab_refer

t1                                 'ref1' 1 'a1' inser
                                  t '' 't2' 'a1'
                                   'ref2' 2 'a1' 'a2'
                                  insert '' 't2' 'a1'
                                  'a2'
                                   'ref3' 3 'a1' 'a2'
                                  'a3' delete '' 't2'
                                  'a1' 'a2' 'a3'
* * * * * * tab_name                          tab_refer

t1
* * * * * * * * * * * * * * * * * tab_name                          tab_refer

v1                                 'v1i1' 2 'b2' 'c2'
                                  insert '' 'tc' 'c4'
                                  'c5'
                                   'v1i2' 2 'b2' 'c2'
                                  insert '' 'tc' 'c2'
                                  'c5'
* tab_name                          tab_refer

v2                                 'v2i1' 1 'a2' inser
                                  t '' 'tc' 'c5'
                                   'v2i2' 1 'a2' inser
                                  t '' 'tc' 'c2'
* * * * * * * tab_name                          tab_refer

v1
* tab_name                          tab_refer

v2
* * * * * * 
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 stdout
cat > summery <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
create the constraints on tables;
delete such that a constraint in the middle and last constraint deletions
	are checked;
create the constraint on views upto two levels;
delete the constraints as in the case of tables;

delete the constraints using constraint names only, constraint name
	and table names, full constraint definitions without constraint
	names, full definition with constraint names;
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 summery
cat > tag <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
Referential Constraints - create and delete constraints.
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 tag
