|
|
Vaya! Muy Bien! De verdad ... En ningún momento esperaba esta respuesta tan positiva a mis comentarios. T elo has 'currado' bastante. Y lo mejor, esa es la 'satisfacción que se lleva uno cuando consigue esos resultados.
Me alegra tu respuesta! Me he encontrado ya con algunos casos. Les he recomendado que por su bien investiguen y ME HAN ACABADO CONTESTANDO MAL!
Me puedes hacer la pregunta que desees, yo te contestaré. Pero de esta forma, no te has dado cuenta de lo bueno que es para tí? No sólo aprovaras, sino que aprenderás. Y eso es lo mejor de todo.
Bueno ... paro de 'discursos' que parezcoun cura! :-)
(de todas formas, por la pregunta final que haces ... te he 'pillado'!!! jajaja, vaya copiada que te has metido ... en fin).
A ver, las consultas que realizas, las está haciendo sobre 'vistas' del diccionario de Oracle. Donde se guarda toda la informaciñon sobre la configuración de la instancia.
De hecho el 'show parameters' es lo mismo que hacer un 'Select * from V$PARAMETER'.
(Él auntomáticamente lo interpreta así y hace la consulta internamente y te devuelve los datos de la consulta que te he indicado).
A ver, me has dicho que eras, novatillo. Y yo hablandote de 'vistas'!!! Las vistas 'view,s' so nobjetos de la BB.DD. de Oracle en los que defines un tipo de consulta (sobre tablas o sobre otras vistas ... etc) y la tratas como objetos a consultar sin necesidad de escribir las relaciones ... o uniones entre tablas. Por ejemplo, quieres trabajar siempre con un conjunto de datos que te dé información de algunis datos de las "lineas de facturas" y "datos del número y fecha de factura" ... crearias una vista 'view' de la siguiente forma :
CREATE OR REPLACE my_vista as
select fac_num_fac num_factura, fac_data_fact, lin_num_lin linea, lin_artículo, lin_cantidad, lin_importe
from facturas, lienas_facturas
where fac_num_fac = lin_num_fact;
Se podrian poner más datos, o más restricciones, o agrupaciones ... etc.
Luego, en tu aplicación cuando quieras saber información de las lineas de facturas puedes hacer por ejemplo :
Select * from my_vista
where num_factura = 1
De alguna forma no tienes que saber las relaciones internas entre facturas y lineas. En cuerta forma encapsulas el contenido y no tienes que repetir siepre el mismo código.
Aunque sirve para más cosas!!! Ya lo iras viendo.
Respecto a el pequeño 'toque' que te he hecho sobre tu pregunta, ahora entenderás porque lo he hecho (y porque me he dado cuenta de que has cogido todo de Internet).
Cuando haces : "Select * from ..." lo que haces es que te enseñe todas las columnas de la tabla. Así no tienes que escribir columna a columna. Aunque lo más normal es que hagas :
SQL > desc Nombre_tabla o Vista y te enseña las columnas que quieres ver.
Depues sólo pones en la sentencia de consulta : "Select columna_1, columna_8, ...."
Las que te interesan. OK? :-)
Te voy a dar un ainformación añadida respecto a como indagar en Oracle ... Espero que la entiendas y hagas uso de ella, ya que te servirá de mucha información :
Oracle guarda todo lo relativo a la configuración de la INSTANCIA (~BB.DD.) en unas vistas del diccionario (realizan vistas para que no te tengas que acoradar del modelo interno Entidad-Relación de estas y de nombre de tablas com obj$ y otros más complicados.
Tan solo haz lo siguiente ... Cuando quieras saber indormación de Oracle (diccionario) realiza la siguiente consulta :
Select View_name from dba_views
Where owner in ('sys', 'system')
Te saldra una relación de todas las vistas del diccionario y 'por el nombre' te indicarán más o menos que información tienen. (De hecho las que me has indicado Saldran, ya lo veras ...).
En teoria, el diccionario tambien guarda 'comentarios explicativos' de todos los objetos pero siempre hay excepciones (y no sólo de la gente que desarrolla aplicaciones!!!, incluso en el mismo diccionario de Oracle suele pasar -grave error-, pero ...).
Si haces :
Select a.owner, a.view_name, b.comments
from dba_views a, dba_tab_comments b
Where a.owner = b.owner
and a.view_name = b.table_name
Te saldrá la relación de vistas del diccionario con sus comentarios explicativos y contarás con muchisima información. Una vez identificadas y haciendo consulta sobre ellas.
NOTA : Sorry, te lo digo de memoria, 'puede que en lugar de poner 'dba_tab_comments', debas de utilizar 'dba_view_comments' ... Pero creo que no me equivoco. Es que aqui no tengo instalado el Oracle. Sino te lo confirmaria. Si es asi, que creo recordad que no, entonces cambia tambien el 'a.view_name = b.view_name'. NO OBSTANTE ES CORRECTA LA SENTENCIA. Vamos lo 'juraría' ... de todas formas, te lo dejo como ejercicio ;-) Ok?
Y nada ... sigue así. Creo qu evaldrá la pena. Ya me lo dirás con el tiempo!
Piensa que si eres informático. ORACLE es por hoy el mejor Gestor de BB.DD. del mercado (aunque el 'MAgic Quadrant de Gatner coloque por encima a "Teradata"). Aprende y tendrás salida laboral segura!
En fin, espero haberte ayudado.
Pero no tiendas a pedir por pedir -curratelo un poco- y a sólo buscar en Internet, Copiar y Pegar. Eso ha llevado a mucha gente al fracaso. Indaga porque te dan esa solución y si es veraz.
Ánimo y escribeme cuando quieras o tengas una duda.
Un Saludo
Ramón
|