Transacciones Vistas Procedimientos y Funciones
Transacciones Vistas Procedimientos y Funciones
Transacciones Vistas Procedimientos y Funciones
START TRANSACTION;
SELECT @A:=SUM(salary) FROM table1 WHERE
type=1;
UPDATE table2 SET summary=@A WHERE type=1;
COMMIT;
Vistas
Creación de Vistas:
• La instrucción CREATE VIEW crea una nueva vista.
• Ejemplo:
• CREATE VIEW view_name AS SELECT ...;
• Alteración y Eliminación de Vistas:
• ALTER VIEW: Modifica la definición de una vista.
• DROP VIEW: Elimina una vista existente.
Origen de las Vistas:
• Una vista se puede crear a partir de diversos tipos de instrucciones
SELECT.
• Puede referirse a tablas base o a otras vistas.
• Puede utilizar JOIN, UNION y subconsultas.
Procedimientos y funciones
Funciones y procedimientos
• Para automatizar tareas y realizar cálculos complejos.
• Funciones y procedimientos en MySQL son bloques de código
ejecutables desde consultas SQL o programas externos.Útiles para
automatizar tareas repetitivas y realizar cálculos complejos.
Procedimientos en MySQL
• Conjunto de instrucciones almacenadas en el servidor.
• Simplifican el trabajo de los desarrolladores y mejoran el
rendimiento.
• Ventajas:
• eficiencia, rapidez, seguridad, y reducción de tráfico.
• Aumenta la seguridad al conceder permisos específicos para la
ejecución de procedimientos.
• Menos información viaja entre la base de datos y el servidor web.
• Desventajas: complejidad de programación, dificultad en la
depuración, posible sobrecarga del servidor.
Sintaxis de MySQL CREATE PROCEDURE
• Procedimientos deben tener un nombre, parámetros opcionales,
características y una definición.
CREATE PROCEDURE nombre (parámetros)
[características] definición
CALL proc_sacar_clientes_tipo(34);
Crear funciones en MySql
DELIMITER //
CREATE FUNCTION nombreFuncion() RETURNS tipoRetorno
BEGIN
-- Cuerpo de la función
END
//
SELECT holaMundo();
Variables y parametros
CREATE FUNCTION holaMundo() RETURNS VARCHAR(30)
BEGIN
DECLARE salida VARCHAR(30) DEFAULT 'Hola mundo';
SET salida = 'Hola mundo con variables';
RETURN salida;
END