You want to connect multiple databases in oracle forms to perform certain tasks, for example you need to execute ddl or dml statements against databases but when you try to use dblink it gives you error or suddenly quits from the oracle forms.
Solution - 1
You can create Database Synonyms for the objects which you want to access through dblink in oracle forms. Suppose you want to execute a procedure from another database, create a synonym for that procedure in current database and access it in oracle forms.
Solution - 2
Use Exec_Sql package in oracle forms to access multiple database and to execute any ddl and dml statements. A simple example is given below:
declare
cid exec_sql.conntype;
cursorid exec_sql.curstype;
begin
cid := exec_sql.open_connection('scott/tiger@db3');
cursorid := exec_sql.open_cursor(cid);
exec_sql.parse(cid, cursorid, 'drop table emp2 ', exec_sql.v7);
exec_sql.close_cursor(cid, cursorid);
exec_sql.close_connection(cid);
end;