Ver Mensaje Individual
  #3  
Antiguo 07-10-2006
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Reputación: 25
poliburro Va por buen camino
Un procedimiento almacenado es un script escrito en lenguaje T-Sql y es almacenado por el motor de base de datos que tú elijas. Es muy recomendable su uso Por entre muchas, las siguientes razones.


1- Ya que el motor de base de datos es quíen análiza y optimiza al momento de ser creados los Procedimientos almacenados, su ejecución en cada llamada tiene un mayor rendimiento a que si estás lanzando querys que deben ser analizadas y optiminzadas por cada ejecución. En este punto otra ventaja es que en sql server puedes hacer uso de los planes de ejecución para evitar los Index scan que decrementan terriblemente el rendimiento del motor de base de datos.

2- El leguaje T-SQl te permite optimizar operaciones que si las haces desde tu aplicación requeririan el lanzamiento de varias consultas al motor de base de datos.


3- Al tener tu lógica en el motor de base de datos, un cambio en la manera en que debe ser procesada determinada acción sobre tus tablas es una tarea sencilla en comparación de las aplicaciónes que tienen regadas copnsultas de acceso a datos. Además de que un Sp que desarrollaste para un sistema de escritorio puede funcionarte para un fron-end web. En cambio, si usas consultas deberás hacer doble trabajo.





4-Imagina que tienes una aplicación que lanza código de decenas o cientos de líneas para consultar datos, ahora imagina que tu aplicación es ejecutada por 100 clientes concurrentes. Resultado de esto? un desperdicio innecesario de recursos de red, y un decremento terrible del motor de base de datos. Al utilizar Sps, solo invocas el nombre del sp, le pasas los parámetros, si acaso los requiere, y listo, ya que el motor previamente ha optimizado el script, su degradación es mínima

Hay muchás más razones del por que se deben usar sps. y su uso es muy sencillo,

tomas la paleta ADO seleccionas el AdoStoredProcedure y haces


ADOStoredProc1.Parameters.CreateParameter(Nombre,Tipo,Direccion,Tamaño,ValorInicial)


Suerte
Responder Con Cita