Un procedimiento almacenado de SQL Server es un grupo de una o más instrucciones Transact-SQL.
Para que tengo que escribir tantos procedimientos? Esta es la pregunta que me hacen todos los que inician en el desarrollo o en la administración de servidores de base de datos.
La respuesta siempre son las mismas dos:
Tráfico de red reducido entre el cliente y el servidor SQL Server
Los comandos de un procedimiento se ejecutan en un único lote de código. Esto puede reducir significativamente el tráfico de red entre el servidor y el cliente porque únicamente se envía a través de la red la llamada que va a ejecutar el procedimiento. Sin la encapsulación de código que proporciona un procedimiento, cada una de las líneas de código tendría que enviarse a través de la red.
Mayor seguridad SQL Server
Varios usuarios y programas cliente pueden realizar operaciones en los objetos de base de datos subyacentes a través de un procedimiento, aunque los usuarios y los programas no tengan permisos directos sobre esos objetos subyacentes. El procedimiento controla qué procesos y actividades se llevan a cabo y protege los objetos de base de datos subyacentes. Esto elimina la necesidad de conceder permisos en cada nivel de objetos y simplifica los niveles de seguridad.
ver ejemplo de como se ejecuta de un llamado de una consulta
SELECT CAMPO1, CAMPO2 FROM TABLA DE PRUEBA
Servidor de Sql Server debe compilar todo este codigo antes de ejecutarlo,
Es distinto al llamado de un procedimiento
exec esquema.Seleccionartodoslosregistros;
Ver mas links relacionados
ver otros links que pueden ser de ayuda en este tema