Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Oracle
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-05-2008
Avatar de PaFernan99
PaFernan99 PaFernan99 is offline
Miembro
 
Registrado: mar 2004
Ubicación: La Plata, Buenos Aires, Argentina
Posts: 79
Poder: 21
PaFernan99 Va por buen camino
Question Objetos de sistema y otros problemas

Hola Gente!
La pregunta es la siguiente: ¿cómo puedo ver los objetos del sistema Oracle? Es decir, si quisiera ver las tablas que maneja el motor, haria la siguiente consulta:
Código SQL [-]
Select * from DBA_TABLES
y si quisiera ver los triggers sería
Código SQL [-]
Select * from DBA_TRIGGERS
por ejemplo, pero quisiera ver los demás componentes, como columnas, stored procedures, etc.
Otra cosa que necesito saber es como puedo ver si existe una cadena dentro de la definicion de un trigger, porque al hacer esta consulta
Código SQL [-]
Select * from DBA_TRIGGERS where TRIGGER_BODY LIKE '%cadena%'
genera el error ORA-00932: inconsistent datatype: expected NUMBER
got LONG.

Saludos y muchas gracias!
Responder Con Cita
  #2  
Antiguo 15-05-2008
avmm2004 avmm2004 is offline
Miembro
 
Registrado: jun 2006
Ubicación: Santa cruz de Tenerife, Islas Canarias
Posts: 500
Poder: 18
avmm2004 Va por buen camino
Encontre este tema para buscar textos en un trigger_body de Oracle:

Es un script completo, igual te vale:
Código SQL [-]


SET SERVEROUTPUT ON
SET VERIFY OFF


ACCEPT search_string PROMPT "Enter the case-sensitive search string: "
PROMPT Please wait while the triggers are being searched ...

-- ----------------------------------------------------------
-- Name: search_triggers32.sql
-- Author: Dejan Jovanovic

-- Date: November 2002
-- Purpose: Search for the given text within a trigger body
-- Note: It can work only if the trigger body size is < 32K,
--       otherwise ORA-6502 is raised.
-- ----------------------------------------------------------
DECLARE
  CURSOR cur_triggers IS
    SELECT owner, trigger_name, trigger_body

    FROM all_triggers;
  v_position INTEGER;
BEGIN
  DBMS_OUTPUT.ENABLE(1000000);
  FOR rec_trigger IN cur_triggers LOOP
    v_position := INSTR(rec_trigger.trigger_body, '&search_string');
    IF v_position > 0 THEN
      --  Display the trigger details:
      DBMS_OUTPUT.PUT_LINE('========================================');

      DBMS_OUTPUT.PUT_LINE('Owner: ' || rec_trigger.owner || ', Trigger
Name: ' || rec_trigger.trigger_name);
      IF v_position >= 20 THEN
        -- Display a piece of code around the searched string:
        DBMS_OUTPUT.PUT_LINE(SUBSTR(rec_trigger.trigger_body, v_position - 20, 80) || CHR(10));
      ELSE
        -- Display a piece of code after the searched string:
        DBMS_OUTPUT.PUT_LINE(SUBSTR(rec_trigger.trigger_body, v_position, 80) || CHR(10));
      END IF;
    END IF;

  END LOOP;
END;

..... el enlace es :

http://www.oracle.com/technology/ora...03/020903.html
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Accesar a las propiedades de otros objetos sharky Varios 2 07-12-2004 23:58:55
Problemas con la aplicacion en otros equipos Mashabak Tablas planas 2 29-06-2004 17:16:55
Problemas en sistema JamesBond_Mx Varios 1 25-03-2004 22:20:20
Problemas con filtro... (y otros) sitrico Conexión con bases de datos 1 21-01-2004 21:52:12
Como mi instalar mi sistema en Delphi en otros equipos? Ricsato Varios 2 23-10-2003 20:21:42


La franja horaria es GMT +2. Ahora son las 18:45:04.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi