Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
***********************
CREATE PROCEDURE MUESTRA_CLIENTES()
SELECT * FROM CLIENTES WHERE POBLACION = 'Mexico';
CALL MUESTRA_CLIENTES();
***************************
TABLA PRODUCTOS
CALL ACTUALIZA_PRODUCTOS(425,'CA01');
************************
DELIMITER $$
CREATE PROCEDURE CALCULA_EDAD(ANIO_NICIMIENTO INT)
BEGIN
DECLARE ANIO_ACTUAL INT DEFAULT 2016;
DECLARE EDAD INT;
END; $$
DELIMITER ;
*****************************
DELIMITER $$
CREATE TRIGGER REVISA_PRECIO_BU BEFORE UPDATE ON PRODUCTOS FOR EACH ROW
BEGIN
IF(NEW.PRECIO<0) THEN
SET NEW.PRECIO=OLD.PRECIO;
END;$$
DELIMITER ;
//DEJE EL PRECIO ASI COMO ESTA
***************************
CREATE DATABASE DBCLIENTES;
CREATE TABLE TBCLIENTES(CODIGO_CLI INT PRIMARY KEY, NOMBRE_CLI
VARCHAR(30))ENGINE=INNODB;
DELIMITER //
CREATE PROCEDURE INSERTARDATO(IN CODIGO INT, NOMBRE VARCHAR(230))
BEGIN
INSERT INTO TBCLIENTES(CODIGO_CLI, NOMBRE_CLI) VALUES (CODIGO,NOMBRE);
END//
DELIMITER ;
SHOW PROCEDURE;
SELECT * FROM TBCLIENTES;
CALL INSERTARDATO(1,'JOSE');
CALL INSERTARDATO(2,'DENIS');
CALL INSERTARDATO(3,'FABI');
CALL INSERTARDATO(4,'ZAIRA');
CALL INSERTARDATO(5,'DIANA');
***************************************
DELIMITER //
CREATE PRECEDURE VIDEO()
BEGIN
SHOW TABLES;
END//
DELIMITER ;
CALL VIDEO();
DELIMITER //
CREATE PRECEDURE SALUDO()
BEGIN
SELECT 'HOLA MUNDO';
END//
DELIMITER ;
***********************************************************************************
*********
CREATE TABLE ALUMNO(
MATRI INT NOT NULL PRIMARY KEY,
NOM VARCHAR(30) NOT NULL,
APA VARCHAR(20) NOT NULL,
AMA VARCHAR(20) NOT NULL,
DIR VARCHAR(50) NOT NULL,
COMEN VARCHAR(50));
************************************
PROCEDIMIENTOS ALMACENADOS SELECCIONAR
DELIMITER //
CREATE PROCEDURE SELECCIONAR_DATOSALUMNOS()
BEGIN
SELECT * FROM ALUMNO;
END //
DELIMITER ;
CALL SELECCIONAR_DATOSAUMNOS();
*********************************
PROCEDIMIENTOS ALMACENADOS INSERTAR
DELIMITER //
CREATE PROCEDURE INSERTAR_DATOSALUMNOS(IN MATRICULA INT, IN NOMBRE VARCHAR(30), IN
AP VARCHAR(20), IN AM VARCHAR(20), IN DIRECCION VARCHAR(50), IN COMENTARIO
VARCHAR(50))
BEGIN
INSERT INTO ALUMNO(MATRI,NOM,APA,AMA,DIR,COMEN) VALUES
(MATRICULA,NOMBRE,AP,AM,DIRECCION,COMENTARIO);
END
//
DELIMITER ;
CALL
INSERTAR_DATOSALUMNOS(112233,'DENIS','SANCHEZ','OSORIO','INDEPENDICIA','EXPERTO');
CALL INSERTAR_DATOSALUMNOS(113344,'JUAN','GARCIA','MARTINEZ','MORELOS','AVANZADO');
CALL INSERTAR_DATOSALUMNOS(223344,'PEDRO','PEREZ','MONTOYA','JUAREZ','MORERADOR');
CALL
INSERTAR_DATOSALUMNOS(224455,'FABIOLA','LOPEZ','ALVAREZ','INDEPENDICIA','REDACTOR')
;
CALL INSERTAR_DATOSALUMNOS(334455,'ZAIRA','GOMEZ','GONZALEZ','JUAREZ','MODERADOR');
CALL
INSERTAR_DATOSALUMNOS(335566,'MELISSA','FERIA','VAZQUEZ','INDEPENDICIA','EXPERTO');
CALL
INSERTAR_DATOSALUMNOS(445566,'DIANA','ROSALES','CRUZ','INDEPENDICIA','EXPERTO');
CALL INSERTAR_DATOSALUMNOS(446677,'SELINA','LOPEZ','FIERRO','ZARAGOZA','EXPERTO');
CALL INSERTAR_DATOSALUMNOS(556677,'PERLA','SANCHEZ','ISUNZA','MORELOS','AVANZADO');
**************************************
PROCEDIMIENTOS ALMACENADOS ACTUALIZAR
DELIMITER //
CREATE PROCEDURE ACTUALIZAR_DATOSALUMNOS(IN MATRICULA INT, IN NOMBRE VARCHAR(30),
IN AP VARCHAR(20), IN AM VARCHAR(20), IN DIRECCION VARCHAR(50), IN COMENTARIO
VARCHAR(50))
BEGIN
UPDATE ALUMNO SET NOM = NOMBRE, APA = AP, AMA = AM, DIR = DIRECCION, COMEN =
COMENTARIO WHERE MATRI = MATRICULA;
END //
DELIMITER ;
CALL
ACTUALIZAR_DATOSALUMNOS(112233,'JOSE','SANCHEZ','OSORIO','COLIMAN','REDACTOR');
***********************************
PROCEDIMIENTOS ALMACENADOS ELIMINAR
DELIMITER //
CREATE PROCEDURE ELIMINAR_DATOSALUMNOS(IN MATRICULA INT)
BEGIN
DELETE FROM ALUMNO WHERE MATRI = MATRICULA;
END //
DELIMITER ;
CALL ELIMINAR_DATOSALUMNOS(556677);
**********************************
PROCEDIMIENTOS ALMACENADOS CANTIDAD DE ALUMNOS
DELIMITER //
CREATE PROCEDURE CANTIDAD_ALUMNOS()
BEGIN
SELECT COUNT(*) FROM ALUMNO;
END //
DELIMITER ;
CALL CANTIDAD_ALUMNOS();
**************************************
PROCEDIMIENTOS ALMACENADOS LISTA ALUMNOS CUYO NOMBRE COMIENZA CON UNA DETERMINADA
LETRA:
DELIMITER //
CREATE PROCEDURE BUSCAR_ALUMNOS(LETRA CHAR(2))
BEGIN
SELECT * FROM ALUMNO WHERE NOM LIKE LETRA;
END //
DELIMITER ;
CALL BUSCAR_ALUMNOS('J%');
****************************************
PROCEDIMIENTOS ALMACENADOS LISTA DE ALUMNOS CUYO NOMBRE COMIENZA CON UNA
DETERMINADA LETRA
Y CUAL ES LA CANTIDAD DE ALUMNOS ALMACENADOS
DELIMITER //
CREATE PROCEDURE BUSCARCANTIDAD_ALUMNOS(IN LETRA CHAR(2), OUT ALUMNS INT)
BEGIN
SELECT * FROM ALUMNO WHERE NOM LIKE LETRA;
SELECT COUNT(*) AS ALUMNOS FROM ALUMNO WHERE NOM LIKE LETRA;
END //
DELIMITER ;
*******************************************
PROCEDIMIENTOS ALMACENADOS ALUMNO
DELIMITER //
CREATE PROCEDURE NIVEL_ALUMNO(IN USUARIO INT(11), OUT NIVEL VARCHAR(50))
BEGIN
DECLARE TOTAL INT;
SELECT COUNT(ALUMNO) INTO TOTAL FROM ALUMNO WHERE MATRI = USUARIO;
IF TOTAL > 5000 THEN
SET NIVEL = 'EXPERTO';
ELSEIF(TOTAL <= 5000 AND TOTAL >= 1000) THEN
SET NIVEL = 'AVANZADO';
ELSEIF(TOTAL <= 1000 AND TOTAL >= 500) THEN
SET NIVEL = 'MODERADOR';
ELSEIF(TOTAL <= 500 AND TOTAL >= 100) THEN
SET NIVEL = 'REDACTOR';
END IF;
END //
DELIMITER ;
CALL NIVEL_ALUMNO(112233,'REDACTOR');