Procedimientos Almacenados vs Vistas, SQL Server

30/06/2004 - 12:28 por Miquel | Informe spam
Hola,
Me pregunto si hay alguna diferencia en cuanto a rendimiento, para una
consulta del tipo "Select * from tblClients".
(suponiendo que quiero todos los campos y que no necesito filtrar filas)

- Es mejor crear una vista, y desde el código llamar a la vista?
- O es mejor crear un SP?

Grácias,
Miquel

Preguntas similare

Leer las respuestas

#1 tribufo
30/06/2004 - 17:17 | Informe spam
Hola,
En tu caso que planteas el usar una vista no ganas nada
pues el proceso sigue siendo practicamente el mismo, no
tiene sentido crear una vista.

Select * from vistaClients

Para el caso de procedimientos almacenados, en una
sentencia tan basica, tampoco es mucho lo que se gana,
pues ni siquiera hay parametros y el proceso de
compilacion de sentencia sql seria lo poco que se gana.


Hola,
Me pregunto si hay alguna diferencia en cuanto a


rendimiento, para una
consulta del tipo "Select * from tblClients".
(suponiendo que quiero todos los campos y que no necesito


filtrar filas)

- Es mejor crear una vista, y desde el código llamar a la


vista?
- O es mejor crear un SP?

Grácias,
Miquel



.

Respuesta Responder a este mensaje
#2 Miquel
30/06/2004 - 17:38 | Informe spam
Hola,

Si tienes razón.
La pregunta más correcta seria:

Si tengo la vista vistaClients: "Select * from tblclients", o para que sea
más práctica: "Select * from tblclients inner join tblContactes "
y desde código llamo:

"Select * from vistaClients where lngIDClient = 2"

deberia usar un procedimiento almacenado?

Miquel



"tribufo" escribió en el mensaje
news:23c3101c45eb5$65c09d30$
Hola,
En tu caso que planteas el usar una vista no ganas nada
pues el proceso sigue siendo practicamente el mismo, no
tiene sentido crear una vista.

Select * from vistaClients

Para el caso de procedimientos almacenados, en una
sentencia tan basica, tampoco es mucho lo que se gana,
pues ni siquiera hay parametros y el proceso de
compilacion de sentencia sql seria lo poco que se gana.


Hola,
Me pregunto si hay alguna diferencia en cuanto a


rendimiento, para una
consulta del tipo "Select * from tblClients".
(suponiendo que quiero todos los campos y que no necesito


filtrar filas)

- Es mejor crear una vista, y desde el código llamar a la


vista?
- O es mejor crear un SP?

Grácias,
Miquel



.

Respuesta Responder a este mensaje
#3 Jonathan
30/06/2004 - 18:04 | Informe spam
hola, en ese caso deberias usar un procedimiento
almacenado donde puedas enviar los parametros por los
cuales quieres filtrar la consulta. el problema de la
vista es que haces el select y el realiza toda la
consulta, y posteriormente filtras la vista, es decir
estas consultando mas datos de los que necesitas y
posteriormente los filtras. En tanto que puedes crear un
procedimiento almacenado al que le mandes parametros para
realizar el filtro, entonces el procedimiento almacenado
te puede retornar unicamente los datos que necesitas, en
tanto que la vista primero consultas mas datos de los que
necesitas. Eso me paso a mi con las vistas... si fuera una
vista especifica que no vas a filtrar no habria problema..
pero en este caso no.. y sobretodo si la vista trae muchos
registros. Ademas que los procedimientos almacenados son
mas flexibles para parametrizar que las vistas.

saludos.

Jonathan Caviedes
Hola,

Si tienes razón.
La pregunta más correcta seria:

Si tengo la vista vistaClients: "Select * from


tblclients", o para que sea
más práctica: "Select * from tblclients inner join


tblContactes "
y desde código llamo:

"Select * from vistaClients where lngIDClient = 2"

deberia usar un procedimiento almacenado?

Miquel



"tribufo" escribió


en el mensaje
news:23c3101c45eb5$65c09d30$
Hola,
En tu caso que planteas el usar una vista no ganas nada
pues el proceso sigue siendo practicamente el mismo, no
tiene sentido crear una vista.

Select * from vistaClients

Para el caso de procedimientos almacenados, en una
sentencia tan basica, tampoco es mucho lo que se gana,
pues ni siquiera hay parametros y el proceso de
compilacion de sentencia sql seria lo poco que se gana.


Hola,
Me pregunto si hay alguna diferencia en cuanto a


rendimiento, para una
consulta del tipo "Select * from tblClients".
(suponiendo que quiero todos los campos y que no necesito


filtrar filas)

- Es mejor crear una vista, y desde el código llamar a la


vista?
- O es mejor crear un SP?

Grácias,
Miquel



.





.

Respuesta Responder a este mensaje
#4 Miquel
30/06/2004 - 18:34 | Informe spam
OK!
grácias. muy agradecido.
Miquel

"Jonathan" escribió en el mensaje
news:2349a01c45ebb$fab3f710$
hola, en ese caso deberias usar un procedimiento
almacenado donde puedas enviar los parametros por los
cuales quieres filtrar la consulta. el problema de la
vista es que haces el select y el realiza toda la
consulta, y posteriormente filtras la vista, es decir
estas consultando mas datos de los que necesitas y
posteriormente los filtras. En tanto que puedes crear un
procedimiento almacenado al que le mandes parametros para
realizar el filtro, entonces el procedimiento almacenado
te puede retornar unicamente los datos que necesitas, en
tanto que la vista primero consultas mas datos de los que
necesitas. Eso me paso a mi con las vistas... si fuera una
vista especifica que no vas a filtrar no habria problema..
pero en este caso no.. y sobretodo si la vista trae muchos
registros. Ademas que los procedimientos almacenados son
mas flexibles para parametrizar que las vistas.

saludos.

Jonathan Caviedes
Hola,

Si tienes razón.
La pregunta más correcta seria:

Si tengo la vista vistaClients: "Select * from


tblclients", o para que sea
más práctica: "Select * from tblclients inner join


tblContactes "
y desde código llamo:

"Select * from vistaClients where lngIDClient = 2"

deberia usar un procedimiento almacenado?

Miquel



"tribufo" escribió


en el mensaje
news:23c3101c45eb5$65c09d30$
Hola,
En tu caso que planteas el usar una vista no ganas nada
pues el proceso sigue siendo practicamente el mismo, no
tiene sentido crear una vista.

Select * from vistaClients

Para el caso de procedimientos almacenados, en una
sentencia tan basica, tampoco es mucho lo que se gana,
pues ni siquiera hay parametros y el proceso de
compilacion de sentencia sql seria lo poco que se gana.


Hola,
Me pregunto si hay alguna diferencia en cuanto a


rendimiento, para una
consulta del tipo "Select * from tblClients".
(suponiendo que quiero todos los campos y que no necesito


filtrar filas)

- Es mejor crear una vista, y desde el código llamar a la


vista?
- O es mejor crear un SP?

Grácias,
Miquel



.





.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida