Oracle
 sql >> база данни >  >> RDS >> Oracle

под низ в оракул

Може би нещо подобно; моят CTE е резултат от вашия GET_DDL.

with test (col) as 
(select q'[
CREATE OR REPLACE  TRIGGER "owner"."trigger_delete" BEFORE DELETE ON roles FOR EACH ROW
BEGIN
DBMS_APPLICATION_INFO.read_client_info (acct_utils.trigger_enabled);
IF acct_utils.trigger_enabled <> 'F' THEN
  INSERT INTO delete_table (ID, key, object, type, keytype, objecttype, created, deleted, deletedby) VALUES(
    :old.id,
    :old.key,
    'delete',
    null,
    :old.keytype,
    null,
    :old.whencreated,
    (CURRENT_TIMESTAMP AT TIME ZONE 'GMT'),
    SYS_CONTEXT('TMCtx', 'USERKEY')
  );
END IF;
END trigger_delete;]' 
from dual)
select substr(col, 
              instr(upper(col), 'INSERT INTO DELETE_TABLE'),
              --
              instr(col, ';', instr(upper(col), 'INSERT INTO DELETE_TABLE'), 1) -
              instr(upper(col), 'INSERT INTO DELETE_TABLE') + 1
             ) result
from test;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Набори от една таблица, групирани по колона

  2. Как да изпълнявам заданията в Oracle?

  3. Задаването на по-висок размер на извличане на ред на Oracle прави приложението ми по-бавно?

  4. Зависимости от базата данни на Oracle в PL/SQL

  5. Изпълнение на съхранена процедура на Oracle от SQL Server 2005