Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   ventaja de las vistas .. (https://www.clubdelphi.com/foros/showthread.php?t=28698)

ingel 29-12-2005 14:22:45

ventaja de las vistas ..
 
Hola a todos , la consulta es teorica y quizas elemental pero quisiera saber cual es la diferencia entre usar una vista alamcenada en el motor sql
por ej . Vista1 sea select * from empleado
y en delphi hacer una query por ej. que recupere de la vista con alguna condicion query1 = 'select * from vista1 where codemp = 132'

o DIRECTAMENTE hacer una query desde el delphi que sea :

select * from empleados where codemp = 132

estimo sera el lugar donde se ejecuta la consulta , si en el cliente o en el servidor .. pero no estoy muy seguro . O de como se puede indicar quien haga el trabajo independientemente de si se usa vista o no ...

Gracias y saludos

Ingel

delphi.com.ar 29-12-2005 14:42:13

En un motor bueno, por ejemplo Oracle, las vistas tienen unas cuantas cualidades.
- Como Oracle trabaja con cadenas de privilegios, un usuario podría no tener acceso a una tabla, pero si tener acceso a una consulta que obtiene datos de una tabla, y hasta modificar, agregar o quitar datos, según lo permita la vista.
- El tiempo de ejecución es menor puesto que Oracle tiene las vistas compiladas.
- El usuario de la vista se desentiende de la lógica interna de esta, la vista encapsula el código.
- En SqlServer, por ejemplo, puedes crear vistas indexadas, con esto logras acceder a los datos con mas velocidad.
....

Saludos!

fer21unmsm 29-12-2005 18:39:34

Cita:

Empezado por ingel
Hola a todos , la consulta es teorica y quizas elemental pero quisiera saber cual es la diferencia entre usar una vista alamcenada en el motor sql
por ej . Vista1 sea select * from empleado
y en delphi hacer una query por ej. que recupere de la vista con alguna condicion query1 = 'select * from vista1 where codemp = 132'

o DIRECTAMENTE hacer una query desde el delphi que sea :

select * from empleados where codemp = 132

estimo sera el lugar donde se ejecuta la consulta , si en el cliente o en el servidor .. pero no estoy muy seguro . O de como se puede indicar quien haga el trabajo independientemente de si se usa vista o no ...

Gracias y saludos

Ingel

Bueno sé que lo que voy decir es poco pero puede ayudar en algo espero, la vista te almacena una consulta de forma temporal, a diferencia del select que sólo muestra los datos en ese instante pero nos los guarda temporalmente, o también puede servirte para simplificar un select.

Por decirlo de alguna manera si necesito hacer consultas anidas y muy complejas, puedes utilizar esto haces una vista con una parte de la consulta y luego puedes realizar otra consulta a partir de la vista, ya que queda almacenada temporalmente.

Saludos.


La franja horaria es GMT +2. Ahora son las 18:56:54.

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