FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Creación de una vista SQL dinámica
Hola a todos:
Tengo una duda a ver si alguien me puede ayudar. Estoy desarrollando una aplicación en Delphi y Oracle y necesito crear una vista pero en tiempo de programación no se el owner de una de las tablas a las que accede la vista. Es decir sería algo parecido a esto: create or replace view vista select campo1, campo2 from OWNER.tabla where .... donde OWNER sería una variable que recibiría el valor en tiempo de ejecución. Alguién sabe si esto se puede hacer? Gracias por adelantado! |
#2
|
||||
|
||||
Creación de vista
Claro que por supuesto que se puede hacer esa vista, y cualquier sentencia, incluso Procedimientos, funciones dinamicas.
una solución rápida sería esta: Esta vista te devuelve el owner y el nombre vista puedes usar tambien all_tables que te devuelve todas las tablas. pero te recomiendo que trabajes con vistas.
Esto lo cargas en un combo o en un dbgrid para que seleccionenla vista con su respectivo owner. Ahora una solución que se me ocurre seria que hagas un procedimiento almacenado que haga esto que tu dices, y como parametros de entra el nombre de la vista y su owner que te parece. para hacerlo de forma dinamica. ahi te va este código
Y AQUI ES TODA LA SOLUCIÓN QUE SE ME OCURRE, COMO VEZ. TE ADJUNTO UN LINK MUY BUENO SOBRE ORACLE. http://www.psoug.org/reference/dbms_sql.html <-- sql dinamico http://www.psoug.org/reference/ <--- indice. si tienes más dudas al respecto aqui estamos todos para ayudarte a que te sea más sencillo todo. Saludos cordiales desde Guadalajara, México
__________________
Estudia y anda en la calle.... que asi serás el doble de listo que los demás... análisis de información análisis y diseño de sistemas Paoti Rios Reséndiz Última edición por Paoti fecha: 28-10-2005 a las 18:36:28. Razón: ETIQUETAS SQL |
#3
|
|||
|
|||
Hola Paoti, gracias por responder.
No es exactamente lo que andaba buscando, pero me va a servir. La verdad es que me explico fatal. Lo que yo buscaba por decirlo de alguna manera es una vista 'parametrizada' donde el parametro es el owner de una de las tablas (que lo obtengo de otra tabla según una condición determinada, si ya lo se muy retorcido ;-))) ) Según creo, lo que tu propones es eliminar y crear esa vista cada vez que se acceda a ella. Sería algo así: 1.- borrar_vista 2.- crear_vista 3.- select * from vista where ... Creo que también me sirve esta solución. Muchas gracias por tu ayuda. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|