Pular para o conteúdo

DICA: Forms_DDL

DICA: Forms_DDL

Com certeza você que trabalha com FORMS já teve problemas com transações DML não comitadas. Isso mesmo utilizando o comando COMMIT no bloco PL/SQL.

Existe um Built in no forms chamado Forms_DDL. Com ele é possível comitar ou dar rollback em todas as transações DML pendentes no FORMS.

Ex:  forms_ddl('COMMIT'); forms_ddl('ROLLBACK');

Também é possível executar bloco PL/SQL anônimo com ele:

forms_ddl ('Begin Update_Employee (:emp.empno); End;');

Algumas instruções DDL também são possíveis, como CREATE TABLE

/*** Built-in: FORMS_DDL
** Example: The expression can be a string literal. 
*/ 
BEGIN 
   Forms_DDL('create table temp(n NUMBER)'); 
   IF NOT Form_Success THEN 
      Message ('Table Creation Failed'); ELSE Message ('Table Created'); 
   END IF; 
END;

Até a versão 6i, o forms_ddl tinha algumas restrições como não efetuar DROP de tabelas ou DATABASE LINKS. Não fiz o teste no 10g ainda para saber se isso se mantém.

Fonte 

  • Help Forms 6i

Abraço

Quão útil foi este post ?

Clique em uma estrela para classificar o post

nota média 4.9 / 5. Contagem de votos: 17

Sem votos ! Seja o primeiro a classificar !

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

plugins premium WordPress