Prodimientos almacenados (llevar todo ahi?)

23/10/2007 - 09:36 por Pablo Roca | Informe spam
Hola,

Bueno estuve viendo como funcionan los procedimientos y la verdad que
resultan muy interesantes.

En una aplicacion de gestion tipica ...

Hasta uno donde debe utilizar procedimientos almacenados? Es decir ..
¿llevamos la mayor parte de nuestro codigo para ahi? solo las partes mas
criticas de una aplicación? .. Solo las consultas mas complejas ... todo?

¿Donde está el limite?


PD: Me importa muy poco que me vean mi codigo de los procedimientos
almacenados, es para aplicaciones internas.


Saludos,

Pablo Roca
La Coruna - Spain
http://www.portalfox.com
 

Leer las respuestas

#1 Salvador Ramos
23/10/2007 - 10:21 | Informe spam
Hola Pablo,

La verdad que sobre este tema he oído opiniones muy muy diversas. Los
desarrolladores te darán razones para incluirlas fuera del servidor, y
posiblemente en este grupo tengamos más tendencia a incluirlas en el
servidor :-). Por eso te recomiendo que realices también la pregunta en
grupos de desarrollo y obtendrás un visión más amplia.
A ver qué opinan el resto de compañeros.

Mi recomendación, un poco genérica eso si, es que toda la parte que tenga
que hacer uso intensido de acceso a datos se incluya en el servidor
(utilizando procedimientos almacenados, triggers, UDFs, ...), e incluso
parte de las reglas de negocio, sobre todo aquellas que se adapten más
fácilmente al lenguaje T-SQL. Y luego dejaría fuera del servidor las reglas
de negocio más complejas que requieran más código complejo de implementar en
T-SQL. Siempre hay que tener en cuenta la cantidad de datos que deberá
devolver el servidor para que puedan ejecutarse dichas reglas de negocio,
por ejemplo si tenemos un proceso que envía mucha información al cliente, la
procesa y luego tiene que devolverla al servidor, eso mejor hacerlo en el
servidor, bien con T-SQL, bien si esto es complejo apoyándonos en el CLR. En
cambio otro tipo de procesos que no van a generar mucho tráfico de red por
el envío de datos entre el cliente y el servidor, pero que requieren cierta
complejidad, estos los llevaría al cliente.

Otra recomendación, lo que si me plantearía es utilizar algún generador de
código o crearte el tuyo propio, para tareas repetitivas, ya que siempre
habrá muchas tablas sin (o casi) sin lógica de negocio, las típicas tablas
auxiliares. Por ejemplo para crear procedimientos insert, update, delete por
cada tabla ...

Te paso también este link por si te puede aportar algo:
http://www.geocities.com/SiliconVal...egocio.htm

Un saludo
Salvador Ramos

www.helpdna.net (información sobre SQL Server y Microsoft .Net)
www.helpdna.net/acerca_de_salvador_ramos.htm


"Pablo Roca" escribió en el mensaje
news:
Hola,

Bueno estuve viendo como funcionan los procedimientos y la verdad que
resultan muy interesantes.

En una aplicacion de gestion tipica ...

Hasta uno donde debe utilizar procedimientos almacenados? Es decir ..
¿llevamos la mayor parte de nuestro codigo para ahi? solo las partes mas
criticas de una aplicación? .. Solo las consultas mas complejas ... todo?

¿Donde está el limite?


PD: Me importa muy poco que me vean mi codigo de los procedimientos
almacenados, es para aplicaciones internas.


Saludos,

Pablo Roca
La Coruna - Spain
http://www.portalfox.com

Preguntas similares