Vistas o Procedimientos almacenados?

31/07/2004 - 14:00 por Maria | Informe spam
Hola a todos. Aunque he intentado leer algo sobre el
tema, no me queda muy claro que diferencias existen a
nivel de eficiencia entre una VISTA y un Procedimiento
Almacenado. Por ejemplo si quiero realizar una consulta
compleja que involucre varias tablas y cuyo resultado sea
un conjunto de registros. ¿que sería mejor usar , una
vista y hacer desde VB una select?, o bien, tener un
Procedimiento Almacenado y ejecutarlo desde VB?.

Si alquien me pudiera aclarar el porqué y para qué es
mejor una cosa un otra se lo agradecería. Muchas Gracias.

Preguntas similare

Leer las respuestas

#1 Pablo Fabian Savino
31/07/2004 - 15:35 | Informe spam
Hola Maria,

bueno, yo te recomendaria que uses procedimientos
almacenados , dado que te permiten pasar parametros, cosa que los Views no!
Como eficienciaes casi lo mismo la ventaja
es que el SP te permite mas cosas, pasar parametros , llamar a otro SP desde
el primero, llamar funciones etc etc etc.

Yo hice pruebas con vistas y decidi seguir con los SP,
me resultan mucho mas flexibles.

Yo diria que sigas con SP, es lo mejor

pero bueno, tambien es cuestion de gustos jejej

saludos


"Maria" wrote in message
news:7ac801c476f5$fd6cfd60$
Hola a todos. Aunque he intentado leer algo sobre el
tema, no me queda muy claro que diferencias existen a
nivel de eficiencia entre una VISTA y un Procedimiento
Almacenado. Por ejemplo si quiero realizar una consulta
compleja que involucre varias tablas y cuyo resultado sea
un conjunto de registros. ¿que sería mejor usar , una
vista y hacer desde VB una select?, o bien, tener un
Procedimiento Almacenado y ejecutarlo desde VB?.

Si alquien me pudiera aclarar el porqué y para qué es
mejor una cosa un otra se lo agradecería. Muchas Gracias.
Respuesta Responder a este mensaje
#2 Lázaro
02/08/2004 - 19:25 | Informe spam
María, el tipo de objeto es absolutamente distinto y pensado para cosas
diferentes.

Las vistas intentan ocultar la complejidad de tu modelo de datos, de manera
que aunque por ejemplo, tu decidas partir la tabla de clientes en 4 tablas,
puedes tener una vista llamada clientes que hagas los joins
correspondientes. Esta táctica y otras las siguen desde siempre los sistemas
que se hacen en los bancos, de esta manera se evitan cambios en los
programas, si un día decides cambiar la estructura de tus tablas, mientras
tus vistas que son lo que utilizas sigan devolviendo la misma información tu
sistema funcionará. También hay gente que las usa para filtrar los datos por
seguridad, de manera que aunque todo el mundo use la vista "clientes", cada
uno sólo podrá ver los suyos, si por ejemplo las tablas de clientes no son
dbo.tabclientes, sino user.tabclientes.

Sin embargo el procedimiento almacenado es algo más, además de los
parámetros, piensa que puedes realizar varios pasos select, delete, tablas
de trabajo, etc, de manera que es código incluido en la base de datos.

Yo desde luego soy de la misma opinión que Pablo, mucho mejor los SP, y
sobre todo no mezcles sin criterio que luego el mantenimiento es brutal. Yo
deje de usarlas, porque muchos de los errores de los SP de SQL, hacían
relación al uso de vistas en sentencias complejas, revisate los FIX LIST y
te darás cuenta.

Salu2 y suerte


"Maria" wrote in message
news:7ac801c476f5$fd6cfd60$
Hola a todos. Aunque he intentado leer algo sobre el
tema, no me queda muy claro que diferencias existen a
nivel de eficiencia entre una VISTA y un Procedimiento
Almacenado. Por ejemplo si quiero realizar una consulta
compleja que involucre varias tablas y cuyo resultado sea
un conjunto de registros. ¿que sería mejor usar , una
vista y hacer desde VB una select?, o bien, tener un
Procedimiento Almacenado y ejecutarlo desde VB?.

Si alquien me pudiera aclarar el porqué y para qué es
mejor una cosa un otra se lo agradecería. Muchas Gracias.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida