¿Qué significa procedimiento almacenado mysql?
El procedimiento almacenado (procedimiento almacenado) es un conjunto de declaraciones SQL para completar funciones específicas. Se compila y almacena en la base de datos. El usuario especifica el nombre del procedimiento almacenado y proporciona los parámetros (si es el procedimiento almacenado). tiene parámetros) para llamarlo y ejecutarlo.
Un procedimiento almacenado es una función programable que se crea y guarda en la base de datos. Puede consistir en sentencias SQL y algunas estructuras de control especiales. Los procedimientos almacenados son útiles cuando desea realizar la misma función en diferentes aplicaciones o plataformas, o encapsular una funcionalidad específica. Los procedimientos almacenados en una base de datos pueden verse como una simulación del enfoque de programación orientado a objetos. Permite controlar cómo se accede a los datos.
Los procedimientos almacenados suelen tener las siguientes ventajas:
Los procedimientos almacenados mejoran la funcionalidad y flexibilidad del lenguaje SQL. Los procedimientos almacenados se pueden escribir utilizando declaraciones de control de flujo, son muy flexibles y pueden completar juicios complejos y operaciones más complejas.
Los procedimientos almacenados permiten programar componentes estándar. Una vez creado un procedimiento almacenado, se puede llamar varias veces en el programa sin tener que reescribir la declaración SQL del procedimiento almacenado. Y los profesionales de bases de datos pueden modificar los procedimientos almacenados en cualquier momento sin afectar el código fuente de la aplicación.
Los procedimientos almacenados pueden lograr una velocidad de ejecución más rápida. Si una operación contiene una gran cantidad de código Transaction-SQL o se ejecuta varias veces, el procedimiento almacenado se ejecutará mucho más rápido que el procesamiento por lotes. Porque los procedimientos almacenados están precompilados. Cuando se ejecuta un procedimiento almacenado por primera vez, el optimizador analiza y optimiza la consulta y finalmente se almacena un plan de ejecución en la tabla del sistema. La declaración Transaction-SQL por lotes debe compilarse y optimizarse cada vez que se ejecuta, y la velocidad es relativamente más lenta.
Los procedimientos almacenados pueden reducir el tráfico de la red. Para operaciones en el mismo objeto de base de datos (como consulta, modificación), si la instrucción Transaction-SQL involucrada en esta operación está organizada en un procedimiento almacenado, cuando se llama al procedimiento almacenado en la computadora cliente, solo se transmite la llamada. las declaraciones de la red, lo que aumenta considerablemente el tráfico de la red y reduce la carga de la red.
Los procedimientos almacenados se pueden utilizar plenamente como mecanismo de seguridad. Al restringir los permisos para ejecutar un determinado procedimiento almacenado, el administrador del sistema puede limitar los permisos de acceso a los datos correspondientes, evitar que usuarios no autorizados accedan a los datos y garantizar la seguridad de los datos.
El formato para crear procedimientos almacenados MySQL es el siguiente:
¿CREAR PROCEDIMIENTO?¿Nombre del procedimiento?([Parámetros del proceso[,...]])
[¿Características?...]?Cuerpo del proceso
El código de ejemplo es el siguiente: CREATE?PROCEDURE?proc1(OUT?s?int)?
BEGIN?
SELECT?COUNT (*)?INTO?s?FROM?user;?
END
El procedimiento almacenado puede tener parámetros de entrada, salida, entrada y salida según sea necesario. Hay un parámetro de salida s, el tipo es int. Si hay varios parámetros, use "," para separarlos.
El inicio y el final del cuerpo del proceso están marcados con COMIENZO y FINAL.
Nota: MySQL no admitía procedimientos almacenados antes de 5.0