Dividiré esta respuesta en dos porciones.
No es la definición exacta, sino solo una descripción general básica de los procedimientos almacenados.
Los procedimientos almacenados son básicamente un conjunto de instrucciones SQL, que se pueden guardar en la base de datos con un nombre y se puede llamar para obtener los resultados deseados. Un procedimiento almacenado puede contener una única consulta SQL o múltiples consultas SQL basadas en la complejidad del requisito.
- ¿Cómo se maneja el alojamiento web / dominio en la relación cliente / desarrollador?
- Cómo convertir PSD a HTML usando Bootstrap
- ¿Qué idioma elegir entre php o html5?
- ¿Cuáles son los lenguajes de programación suficientes necesarios para el desarrollo web avanzado y cuáles son las alternativas?
- ¿Cuáles son las implicaciones de seguridad de usar una herramienta de sincronización de marcadores como Xmarks?
Beneficios de los procedimientos almacenados.
- Mejora el rendimiento de la base de datos . Como ? Bueno, cuando SQL ejecuta cualquier consulta, calcula la forma más eficiente de procesar la consulta y crea un plan de ejecución. El tiempo necesario para crear el plan de ejecución es básicamente el tiempo que lleva ejecutar su consulta. Entonces, cuando se ejecutan consultas sql separadas desde su aplicación, cada vez que se crea el plan. Pero cuando se ejecuta un Procedimiento almacenado, el plan creado la primera vez durante su ejecución se almacena en la memoria. Entonces, la próxima vez que se ejecute este mismo Procedimiento almacenado, no se creará un nuevo plan. Toma el plan almacenado en la memoria y lo reutiliza. Por lo tanto, obtiene una ejecución rápida y un mejor rendimiento de la base de datos.
- Reutilización. ¿Cómo? – Suponga que tiene una página que enumera los empleados que trabajan en la empresa. Entonces escribe una consulta en línea en su aplicación “Seleccionar * de tblEmployee”. Lo suficientemente justo. Ahora viene un nuevo requisito, dice al seleccionar un valor desplegable, debe enumerar a todos los empleados a tiempo completo. Entonces, al cambiar el menú desplegable, escribe otra consulta. “Seleccione * de tblEmployee donde IsFulltimeEmp = ” Bastante justo de nuevo. Ahora surge otro requisito después de algún tiempo. Otro filtro, los empleados de filtro se unen según la fecha seleccionada. Básicamente, está agregando más y más consultas en línea a la misma tabla con solo cambiar los filtros. Puede, por otro lado, crear un Procedimiento almacenado. Ese procedimiento almacenado puede aceptar algunos parámetros basados en sus criterios de búsqueda. Y en función de esos valores de parámetros, puede escribir sus consultas de búsqueda dentro del propio procedimiento almacenado. Mañana, si se agregan algunos filtros más a este escenario, todo lo que tiene que hacer es realizar cambios en el Procedimiento almacenado y estará ordenado. Se logra la reutilización y se ahorra mucho tiempo, ya que solo debe ocuparse del SP en lugar de todas esas consultas en línea escritas aquí y allá. A continuación podría ser un gran ejemplo de la funcionalidad similar
Crear procedimientos almacenados con búsqueda dinámica (filtro)
- Facil de mantener. ¿Cómo? – Suponga que su aplicación es utilizada por múltiples clientes. Su base de datos se comparte entre ellos. Y desea realizar un cambio en algunas de las funciones. Había escrito una consulta en línea en su aplicación y ahora desea cambiarla. Entonces lo cambia en su sistema y luego se mueve para implementar. Por lo tanto, deberá compilarlo, compilarlo, publicarlo e implementar el dll en todos los clientes. Dolor en el culo esto es. Ahora, suponga que tiene un procedimiento almacenado en lugar de esto. Modifica el procedimiento almacenado en la base de datos y simplemente lo ejecuta. Los cambios se realizan y se reflejan en sus clientes. Incluso si no están compartiendo la base de datos, puede enviarles el SP actualizado y todo lo que tienen lo hace pegarlo en su servidor sql y presionar F5. Usted logra un mantenimiento fácil y un cambio sin complicaciones.