Procedimientos Almacenados

23/04/2008 - 10:10 por Oscar | Informe spam
Buenas:

Tengo un procedimiento almacenado que realiza la insercion,
actualizacion o el borrado segun un parametro.

ahora bien, la discusion que se generó en la empresa es si un solo
procedimiento almacenado con esas caracteristicas es mas lento o no
que generar tres procedimientos almacenados por separado segun la
accion, o sea un PA para insercion un PA para actualizacion y un PA
para borrado, debido a que de esta forma se esta SQL lo optimiza
mejor.

Gracias

Preguntas similare

Leer las respuestas

#1 Isaias
23/04/2008 - 17:24 | Informe spam
Muchas veces es mejor tener toda la actualizacion (insert, delete, update),
dentro de un solo store, no creo que le ganes velocidad si separas estas
acciones en 3 diferentes stores.
Saludos
IIslas


"Oscar" wrote:

Buenas:

Tengo un procedimiento almacenado que realiza la insercion,
actualizacion o el borrado segun un parametro.

ahora bien, la discusion que se generó en la empresa es si un solo
procedimiento almacenado con esas caracteristicas es mas lento o no
que generar tres procedimientos almacenados por separado segun la
accion, o sea un PA para insercion un PA para actualizacion y un PA
para borrado, debido a que de esta forma se esta SQL lo optimiza
mejor.

Gracias

Respuesta Responder a este mensaje
#2 Carlos M. Calvelo
23/04/2008 - 18:38 | Informe spam
Hola Oscar,

On Apr 23, 10:10 am, Oscar wrote:
Buenas:

Tengo un procedimiento almacenado que realiza la insercion,
actualizacion o el borrado segun un parametro.

ahora bien, la discusion que se generó en la empresa es si un solo
procedimiento almacenado con esas caracteristicas es mas lento o no
que generar tres procedimientos almacenados por separado segun la
accion, o sea un PA para insercion un PA para actualizacion y un PA
para borrado, debido a que de esta forma se esta SQL lo optimiza
mejor.




Una discusión mucho mas fructífera sería sobre el
para qué de estos procedimientos almacenados si
también se pueden hacer las inserciones, actualizaciones
y los borrados directamente, con mucha mas
flexibilidad que las llamadas a un procedimiento.

Saludos,
Carlos
Respuesta Responder a este mensaje
#3 Oscar
23/04/2008 - 21:13 | Informe spam
On 23 abr, 13:38, "Carlos M. Calvelo" wrote:
Hola Oscar,

On Apr 23, 10:10 am, Oscar wrote:

> Buenas:

> Tengo un procedimiento almacenado que realiza la insercion,
> actualizacion o el borrado segun un parametro.

> ahora bien, la discusion que se generó en la empresa es si un solo
> procedimiento almacenado con esas caracteristicas es mas lento o no
> que generar tres procedimientos almacenados por separado segun la
> accion, o sea un PA para insercion un PA para actualizacion y un PA
> para borrado, debido a que de esta forma se esta SQL lo optimiza
> mejor.

Una discusión mucho mas fructífera sería sobre el
para qué de estos procedimientos almacenados si
también se pueden hacer las inserciones, actualizaciones
y los borrados directamente, con mucha mas
flexibilidad que las llamadas a un procedimiento.

Saludos,
Carlos



segun tu experiencia es mejor intentar realizar una clase generica
(VFP q es donde estoy desarrollando la aplicacion) para que genere en
forma automatica si llamar a los procedimientos almacenados haciendolo
mediante SPT?

Saludos Oscar
Respuesta Responder a este mensaje
#4 Petercito
23/04/2008 - 22:21 | Informe spam
Hola:

Creo que es mejor un sp para cada tarea. Eso te acelera y asegura el
mantenimiento además de ganar velocidad puesto que a cada acción el SQL le
daría su plan de ejecución y lo pondría en diferente puesto en cuanto a
estadística.
Pedro Calapi


"Oscar" wrote:

Buenas:

Tengo un procedimiento almacenado que realiza la insercion,
actualizacion o el borrado segun un parametro.

ahora bien, la discusion que se generó en la empresa es si un solo
procedimiento almacenado con esas caracteristicas es mas lento o no
que generar tres procedimientos almacenados por separado segun la
accion, o sea un PA para insercion un PA para actualizacion y un PA
para borrado, debido a que de esta forma se esta SQL lo optimiza
mejor.

Gracias

Respuesta Responder a este mensaje
#5 Maxi Accotto
24/04/2008 - 01:43 | Informe spam
Hola, no todo es una cuestion de performance, en un ABM no logragas mucha
mejora con uno u otro metodo.
Pero ojo, hay otros factores a ver.

1) Separar las cosas es mas prolijo y por ejemplo desde ado.net es mas
simple hacer el mapeo
2) El uso de SP no es solo para mejorar performance, tiene otra ventaja
mucho mayor que es seguridad ya que tu solo le das permisos a los execute y
no a los objetos que tienen dentro. Tambien el uso de SP ayuda a tener todo
centralizado y a reutilizar codigo, hacer mejores analisis y a migrar mas
facil, tenerlo por todos lados es un problemon, imaginate que cambias un
campo a una tabla, como sabes quien hace referencia a ello si el codigo
viene desde aplicaciones?



Microsoft MVP SQLServer
www.sqltotalconsulting.com
-

"Oscar" escribió en el mensaje de
noticias:
Buenas:

Tengo un procedimiento almacenado que realiza la insercion,
actualizacion o el borrado segun un parametro.

ahora bien, la discusion que se generó en la empresa es si un solo
procedimiento almacenado con esas caracteristicas es mas lento o no
que generar tres procedimientos almacenados por separado segun la
accion, o sea un PA para insercion un PA para actualizacion y un PA
para borrado, debido a que de esta forma se esta SQL lo optimiza
mejor.

Gracias
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida