You don't have access to this class

Keep learning! Join and start boosting your career

Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

2 Días
11 Hrs
38 Min
49 Seg

¿Qué son los Stored Procedures?

27/34
Resources

Contributions 7

Questions 0

Sort by:

Want to see more contributions, questions and answers from the community?

STORED PROCEDURES (PROCEDIMIENTOS ALMACENADO)
Son funciones que quedan guardadas en el gestor de base de datos y se pueden invocar.
Sirve para reutilizar código pero más importante nos permite crear consultas frecuentes, Son usualmente llamados rutinas.

PREPARED STATEMENTS
En un procedimiento almacenado también podemos tener consultas preparadas. Esto nos permite tener una cadena de texto con código SQL que podremos ejecutar.

DEBERÍA APLICAR ESTA LÓGICA DESDE UN LENGUAJE MEJOR?
Depende de tu equipo en la organización y de quién quiera tener el control de las consultas.

💾****¿Qué son los Stored Procedure?****

Son funciones que quedan guardadas en el gestor de base de datos y se pueden invocar.

Sirve para reutilizar código pero más importante nos permite crear consultas frecuentes, Son usualmente llamados rutinas.

DELIMITER //
CREATE PROCEDURE procedure_name(
	IN param_name TYPE, -- pasar parametros a la función
	OUT param_name TYPE -- cambiar valor del parametro, reescribir valor
)
BEGIN
	-- SQL code
END //
DELIMITER;

💾Prepared Statements

En un procedimiento almacenado también podemos tener consultas preparadas. Esto nos permite tener una cadena de texto con código SQL que podremos ejecutar.

Me parece que los Stored Procedures son más elegantes, ya que desde el lado del servidor, solo se llama a una función en lugar de llamar a un query que puede ser muy grande. Aunque el nombre del Stored Procedure debe ser semántico para que haya buen entendimiento de la información que se esta consiguiendo desde la BD

una de las caracteristicas mas importantes de los stored procedures es que otorgan una capa extra de proteccion a tu sistema, de que forma?
imagina que un atacante logra vulnerar tu seguridad y tiene acceso al codigo de tu sistema, entonces podria acceder a esos fragmentos de codigo donde ejecutas querys y tendria infomacion privilegiada sobre la estructura de tu bd, nombre de las tablas y nombre de las columnas
al invocar un stored procedure en el back solo es necesario indicar el nombre del procedure y sus parametros de modo que solo esa informacion es la que tendria el atacante y no informacion sensible de la estructura de tus datos

## ¿Por qué utilizar procedimientos almacenados? ## Fuente: ## <https://mariadb.com/kb/en/stored-procedure-overview/> La seguridad es un motivo clave. Los bancos suelen utilizar procedimientos almacenados para que las aplicaciones y los usuarios no tengan acceso directo a las tablas. Los procedimientos almacenados también son útiles en un entorno en el que se utilizan varios idiomas y clientes para realizar las mismas operaciones.
Mediante ORM se mapean las tablas de la base de datos para realizar CRUD, consultas, etc desde el lenguaje de programación (C#, Java, Pyhon, otros), así evitamos atar el sistema que estamos desarrollando a un único motor de base de datos, al menos esa es la tendencia actual usar ORM.
Los famosos SP, aquí en donde trabajo de backend se habla mucho de ellos