Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/01/2012, 10:03
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: cuando utilizar un stored procedure?

Hola oms02...

La respuesta es bastante subjetiva y es difícil poder determinar cuando utilizar un procedimiento almacenado o no...

Uno de los parámetros que puedes tomar para decidir utilizar o no SP sería la complejidad de las consultas. Para consultas complejas donde requieras hacer múltiples subconsultas, validaciones especiales, etc, sería mejor utilizar procedimientos almacenados. pero por ejemplo no utilizarías un SP para hacer un simple COUNT...

Por otro lado, la cuestión de la seguridad también es importante. Si quieres manejar transacciones o tener más control sobre lo que se hace en la BD podrías utilizar SP.

En este mismo orden de ideas, podrías por ejemplo hacer todas las consultas de manera directa a la BD, pero los INSERTS, DELETES Y UPDATES manejarlos desde SP.

Problemas como la inyección de código SQL son más fáciles de controlar con SP pero también pueden evitarse con consultas.

Si estás trabajando también con algún lenguaje de programación, pues habría que considerarlo, aunque en un SP puedes programar casi cualquier cosa también es cierto que con los lenguajes de programación las cosas pueden ser más sencillas, por lo tanto podrías optar por hacer consultas simples y la programación dejarla para el lenguaje que estés utilizando, en lugar del SP.

Finalmente, pues está la cuestión de gustos, hay personas que sólo utilizan SP, hay personas que sólo hacen consultas. En lo particular creo que el punto medio es el mejor, pero cada cabeza es un mundo y muy respetables las opiniones de los demás.


Saludos
Leo.