Una Stored Procedure es el procedimiento de una base de datos que está en condición de ejecutar operaciones complejas dentro de la misma base de datos. Es un programa escrito en SQL o en otros lenguajes que provienen de SQL, como por ejemplo ASP, ASP.NET, Visual Basic u otros.

Según las características, puede ser distinguida en:

- Funciones (aceptan parámetros en entrada/salida y devuelven cada valor);

- Procedimiento (aceptan parámetros en entrada/salida pero no devuelven algún valor);

- Trigger (que son causados por los tenedores).

Las principales ventajas que provienen de la utilización de las Stored procedures son las siguientes:

Evitar al cliente de escribir de nuevo consultas (query) complejas. El procedimiento es rellenado y archivado dentro de la misma base de datos, al garantizar una mejoría de las prestaciones al evitar de cambiar un número excesivo de información entre Cliente y Servidor.

Al ser escritas en versiones propietarias de SQL y al tratarse por lo tanto de reales lenguajes estructurales es posible ejecutar operaciones complejas que no serían realizables al utilizar sólo  (query) consulta SQL.

Mantener algunas librerías de funciones, utilizadas comúnmente dentro de la misma base de datos.

Ejecutar las operaciones que vuelven a llamar un diferente procedimiento sin conocer la estructura de una base de datos o al tener un conocimiento limitado (esto permite al administrador de una base de datos la ventaja de conceder sólo el permiso de ejecución de las stored procedures, al evitar de asignar permisos de modificación y/o de lectura).

Además, comporta un notable ahorro de los recursos de red, ahorro directamente proporcional a la cantidad de código contenido en las stored procedures y a la frecuencia de invocación del mismo.