domingo, 14 de junio de 2015

Actividad de Evaluacion 3.1


Colegio Nacional de Educación Profesional Técnica

 

Alumna: González Sánchez Esmeralda

 

Modulo: Construcción de Base de Datos

Siglema: COBD -02            Grupo: M403-I

 

Profesora: Lic. Edith Martínez Hernández

 

Fecha de entrega: 12-Junio-2015

 


 

 

Unidad de aprendizaje.

Asegurabilidad de la información contenida en la base de datos.

 

Resultado de Aprendizaje 3.1

Programa las transacciones en las bases de datos con base a protocolo, que mantenga la integridad de la información.

 

Actividad de evaluación 3.1.1

Programa y ejecuta transacciones en la base de datos elaborada en la actividad de evaluación 1.3.1 utilizando el protocolo de bloqueo de dos fases y control de concurrencia.

 

 

 

 

 

 

 

PRÁCTICA PROCEDIMIENTOS.

1.   Verifica que el equipo de cóputo se encuentre conectado.

2.   Enciende equipo de cómputo.

3.   Ingresa al Sistema Gestor de Bases de Datos.

 

Enter password:*************

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 3

Server version: 5.0.51b-community-nt-log MySQL Community Edition (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

 

4.   Crea la una base de datos llamada TALLER.

mysql> create database taller;

Query OK, 1 row affected (0.19 sec)

 

5.   Usa la base de datos TALLER.

mysql> use taller;

Database changed

 

6.   Crea las siguientes tablas. Con los campos que corresponden a cada una

ü Alumnos

ü Profesores

ü Materias

ü Calificaciones

ü Carreras

ü Grupos

mysql> create table alumnos(cvealumno varchar(30) primary key,nombre varchar(30),aPaterno varchar(50),aMaterno varchar(50),calle varchar(150),numero int,colonia  varchar(50),municipio varchar(50),estado varchar(50),telefono varchar(20),email varchar(100));

Query OK, 0 rows affected (0.29 sec)

mysql> create table profesores(cveprofesor varchar(50) primary key,nombre varchar(50),aPaterno varchar(50),aMaterno varchar(50),calle varchar(150),numero int,colonia varchar(50),municipio varchar(50),estado varchar(50),telefono varchar(20),especialidad varchar(150),email varchar(100));

Query OK, 0 rows affected (0.13 sec)

mysql> create table materias(cvemateria varchar(50) primary key,nombre varchar(5

0),semestre char);

Query OK, 0 rows affected (0.08 sec)

mysql> create table calificaciones(cvealumno varchar(30) primary key,cvemateria varchar(50),par1 double,par2 double,par3 double,par4 double,par5 double,par6 double,par7 double,par8 double,par9 double,calificacionfinal double,periodo varchar(20));

Query OK, 0 rows affected (0.11 sec)

mysql> create table carreras(cvecarrera varchar(20) primary key,nombre varchar(50));

Query OK, 0 rows affected (0.04 sec)

mysql> create table grupos(cvegrupo varchar(50) primary key,nombre varchar(50),cveprofesor varchar(50),cvealumno varchar(50),cvemateria varchar(50),cvecarrera varchar(50),periodo varchar(20));

Query OK, 0 rows affected (0.04 sec)

 

7.   Crea un procedimiento para agregar los registros de las tablas que ya fueron creadas. Con los mismos campos que tienen cada una de las tablas.

·        Crea un procedimiento para agregar_alumno

mysql> delimiter //

mysql> create procedure agregar_alumno(cvealumno varchar(30),nombre varchar(50),

aPaterno varchar(50),aMaterno varchar(150),calle varchar(20),numero int,colonia

varchar(50),municipio varchar(50),estado varchar(50),telefono varchar(20),email

varchar(100))

    -> begin

    -> insert into alumnos values(cvealumno,nombre,aPaterno,aMaterno,calle,numero,colonia,municipio,estado,telefono,email);

    -> end;

    -> //

Query OK, 0 rows affected (0.08 sec)

 

mysql> call agregar_alumno('002','luis','perez','gonzalez','1 de mayo',7,'consor

cio','cuatitlan Izcalli','edo de mex','58892572','luis.perez@hotmial.com')//

Query OK, 1 row affected (0.12 sec)

 

mysql> select * from alumnos//

+-----------+--------+----------+----------+-----------+--------+-----------+---

----------------+------------+----------+------------------------+

| cvealumno | nombre | aPaterno | aMaterno | calle     | numero | colonia   | mu

nicipio         | estado     | telefono | email                  |

+-----------+--------+----------+----------+-----------+--------+-----------+---

----------------+------------+----------+------------------------+

| 002       | luis   | perez    | gonzalez | 1 de mayo |      7 | consorcio | cu

atitlan Izcalli | edo de mex | 58892572 | luis.perez@hotmial.com |

+-----------+--------+----------+----------+-----------+--------+-----------+---

----------------+------------+----------+------------------------+

1 row in set (0.01 sec)

·     Crea un procedimiento para agregar_profesor

mysql> create procedure agregar_profesor(in cveprofesor varchar(50),nombre varchar(50),aPaterno varchar(50),aMaterno varchar(50),calle varchar(150),numero int,colonia varchar(50),municipio varchar(50),estado varchar(50),telefono varchar(20),especialidad varchar(150),email varchar(100))

    -> begin

    -> insert into profesores values(cveprofesor,nombre,aPaterno,aMaterno,calle,numero,colonia,municipio,estado,telefono,especialidad,email);

    -> end;

    -> //

Query OK, 0 rows affected (0.02 sec)

 

mysql> call agregar_profesor('526','Patricia','Torres','Rangel','Cisneros',89,'Hidalgo','Atizapan','Mexico','58497612','Programador','paty.torres@hotmail.com')//

Query OK, 1 row affected (0.01 sec)

 

mysql> select * from profesores//

+-------------+----------+----------+----------+----------+--------+---------+--

---------+--------+----------+--------------+-------------------------+

| cveprofesor | nombre   | aPaterno | aMaterno | calle    | numero | colonia | m

unicipio | estado | telefono | especialidad | email                   |

+-------------+----------+----------+----------+----------+--------+---------+--

---------+--------+----------+--------------+-------------------------+

| 526         | Patricia | Torres   | Rangel   | Cisneros |     89 | Hidalgo | A

tizapan  | Mexico | 58497612 | Programador  | paty.torres@hotmail.com |

+-------------+----------+----------+----------+----------+--------+---------+--

---------+--------+----------+--------------+-------------------------+

1 row in set (0.00 sec)

·     Crea un procedimiento para agregar_materia

mysql> create procedure agregar_materia(in cvemateria varchar(50),nombre varchar(50),semestre char)

    -> begin

    -> insert into materias values(cvemateria,nombre,semestre);

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call agregar_materia('45','Bases de datos',4)//

Query OK, 1 row affected (0.01 sec)

 

mysql> select * from materias//

+------------+----------------+----------+

| cvemateria | nombre         | semestre |

+------------+----------------+----------+

| 45         | Bases de datos | 4        |

+------------+----------------+----------+

1 row in set (0.00 sec)

 

 

 

 

·     Crea un procedimiento para agregar_calificacion

mysql> create procedure agregar_calificacion(in cvealumno varchar(30),cvemateriavarchar(50),par1 double,par2 double,par3 double,par4 double,par5 double,par6 double,par7 double,par8 double,par9 double,calificacionfinal double,periodo varchar(20))

    -> begin

    -> insert into calificaciones values(cvealumno,cvemateria,par1,par2,par3,par

4,par5,par6,par7,par8,par9,calificacionfinal,periodo);

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call agregar_calificacion('007','45',5,9,7,8,9,7,10,8,8,7.8,'2013-2016')/

/

Query OK, 1 row affected (0.09 sec)

 

mysql> select * from calificaciones//

+-----------+------------+------+------+------+------+------+------+------+-----

-+------+-------------------+-----------+

| cvealumno | cvemateria | par1 | par2 | par3 | par4 | par5 | par6 | par7 | par8

 | par9 | calificacionfinal | periodo   |

+-----------+------------+------+------+------+------+------+------+------+-----

-+------+-------------------+-----------+

| 007       | 45         |    5 |    9 |    7 |    8 |    9 |    7 |   10 |    8

 |    8 |               7.8 | 2013-2016 |

+-----------+------------+------+------+------+------+------+------+------+-----

-+------+-------------------+-----------+

1 row in set (0.00 sec)

·     Crea un procedimiento para agregar_carrera

mysql> create procedure agregar_carrera(in cvecarrera varchar(20),nombre varchar(50))

    -> begin

    -> insert into carreras values(cvecarrera,nombre);

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call agregar_carrera('INFO03','Informatica')//

Query OK, 1 row affected (0.03 sec)

 

mysql> select * from carreras//

+------------+-------------+

| cvecarrera | nombre      |

+------------+-------------+

| INFO03     | Informatica |

+------------+-------------+

1 row in set (0.00 sec)

·     Crea un procedimiento para agregar_grupo.

mysql> create procedure agregar_grupo(in cvegrupo varchar(50),nombre varchar(50)

,cveprofesor varchar(50),cvealumno varchar(50),cvemateria varchar(50),cvecarrera

 varchar(50),periodo varchar(20))

    -> begin

    -> insert into grupos values(cvegrupo,nombre,cveprofesor,cvealumno,cvemateria,cvecarrera,periodo);

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call agregar_grupo('12','M403-I','526','002','45','INFO03','2013-2016')//

 

Query OK, 1 row affected (0.00 sec)

 

mysql> select * from grupos//

+----------+--------+-------------+-----------+------------+------------+-------

----+

| cvegrupo | nombre | cveprofesor | cvealumno | cvemateria | cvecarrera | period

o   |

+----------+--------+-------------+-----------+------------+------------+-------

----+

| 12       | M403-I | 526         | 002       | 45         | INFO03     | 2013-2

016 |

+----------+--------+-------------+-----------+------------+------------+-------

----+

1 row in set (0.00 sec)

 

 

 

8. Crea un procedimiento para editar los registros de las tablas que ya fueron creadas. Con los mismos campos que tienen cada una de las tablas.

·     Crea un procedimiento para editar_alumno

mysql> create procedure editar_alumno(in cvealumno varchar(30),nombre varchar(50

),aPaterno varchar(50),aMaterno varchar(50),calle varchar(150),numero int,coloni

a varchar(50),municipio varchar(50),estado varchar(50),telefono varchar(20),emai

l varchar(100))

    -> begin

    -> update alumnos set cvealumno=cvealumno,nombre=nombre,aPaterno=aPaterno,aM

aterno=aMaterno,calle=calle,numero=numero,colonia=colonia,municipio=municipio,es

tado=estado,telefono=telefono,email=email;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call editar_alumno('03','Alfredo','Gonzalo','Flores','San francisco',8,'v

icente','atizapan','mexico','52487961','Alfredo.gon_@homail.com')//

Query OK, 1 row affected (0.00 sec)

 

mysql> select * from alumnos//

+-----------+---------+----------+----------+---------------+--------+---------+

-----------+--------+----------+-------------------------+

| cvealumno | nombre  | aPaterno | aMaterno | calle         | numero | colonia |

 municipio | estado | telefono | email                   |

+-----------+---------+----------+----------+---------------+--------+---------+

-----------+--------+----------+-------------------------+

| 03        | Alfredo | Gonzalo  | Flores   | San francisco |      8 | vicente |

 atizapan  | mexico | 52487961 | Alfredo.gon_@homail.com |

+-----------+---------+----------+----------+---------------+--------+---------+

-----------+--------+----------+-------------------------+

1 row in set (0.00 sec)

·     Crea un procedimiento para editar_profesor

mysql> create procedure editar_profesor(in cveprofesor varchar(50),nombre varcha

r(50),aPaterno varchar(50),aMaterno varchar(50),calle varchar(150),numero int,colonia varchar(50),municipio varchar(50),estado varchar(50),telefono varchar(20),especialidad varchar(150))

    -> begin

    ->update profesores set cveprofesor=cveprofesor,nombre=nombre,aPaterno=aPaterno,aMaterno=aMaterno,calle=calle,numero=numero,colonia=colonia,municipio=municipio,estado=estado,telefono=telefono,especialidad=especialidad;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call editar_profesor('56','Alma','Rodriguez','Escalona','Vestigio',456,'Berdines','Nicolas romero','Mexico','5512897492','Doctorado')//

Query OK, 1 row affected (0.00 sec)

 

mysql> select * from profesores//

+-------------+--------+-----------+----------+----------+--------+----------+--

--------------+--------+------------+--------------+-------------------------+

| cveprofesor | nombre | aPaterno  | aMaterno | calle    | numero | colonia  | m

unicipio      | estado | telefono   | especialidad | email                   |

+-------------+--------+-----------+----------+----------+--------+----------+--

--------------+--------+------------+--------------+-------------------------+

| 56          | Alma   | Rodriguez | Escalona | Vestigio |    456 | Berdines | N

icolas romero | Mexico | 5512897492 | Doctorado    | paty.torres@hotmail.com |

+-------------+--------+-----------+----------+----------+--------+----------+--

--------------+--------+------------+--------------+-------------------------+

1 row in set (0.00 sec)

·     Crea un procedimiento para editar_materia

mysql> create procedure editar_materia(in cvemateria varchar(50),nombre varchar(50),semestre char)

    -> begin

    -> update materias set cvemateria=cvemateria,nombre=nombre,semestre=semestre;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call editar_materia('h458','Matematicas',5)//

Query OK, 1 row affected (0.00 sec)

 

mysql> select * from materias//

 

 

 

+------------+-------------+----------+

| cvemateria | nombre      | semestre |

+------------+-------------+----------+

| h458       | Matematicas | 5        |

+------------+-------------+----------+

1 row in set (0.00 sec)

·     Crea un procedimiento para editar_calificacion

mysql> create procedure editar_calificacion(in cvealumno varchar(30),cvemateria

varchar(50),par1 double,par2 double,par3 double,par4 double,par5 double,par6 dou

ble,par7 double,par8 double,par9 double,calificacionfinal double,periodo varchar

(20))

    -> begin

    -> update calificaciones set cvealumno=cvealumno,cvemateria=cvemateria,par1=

par1,par2=par2,par3=par3,par4=par4,par5=par5,par6=par6,par7=par7,par8=par8,par9=

par9,calificacionfinal=calificacionfinal,periodo=periodo;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call editar_calificacion('256','598',9,10,6,7,8,8,8,10,10,8.4,'2015-2018'

)//

Query OK, 1 row affected (0.00 sec)

 

mysql> select * from calificaciones//

+-----------+------------+------+------+------+------+------+------+------+-----

-+------+-------------------+-----------+

| cvealumno | cvemateria | par1 | par2 | par3 | par4 | par5 | par6 | par7 | par8

 | par9 | calificacionfinal | periodo   |

+-----------+------------+------+------+------+------+------+------+------+-----

-+------+-------------------+-----------+

| 256       | 598        |    9 |   10 |    6 |    7 |    8 |    8 |    8 |   10

 |   10 |               8.4 | 2015-2018 |

+-----------+------------+------+------+------+------+------+------+------+-----

-+------+-------------------+-----------+

1 row in set (0.00 sec)

 

 

 

 

 

·     Crea un procedimiento para editar_carrera

mysql> create procedure editar_carrera(in cvecarrera varchar(20),nombre varchar(50))

    -> begin

    -> update carreras set cvecarrera=cvecarrera,nombre=nombre;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call editar_carrera('FD45','Conservacion')//

Query OK, 1 row affected (0.00 sec)

 

mysql> select * from carreras//

+------------+--------------+

| cvecarrera | nombre       |

+------------+--------------+

| FD45       | Conservacion |

+------------+--------------+

1 row in set (0.00 sec)

·     Crea un procedimiento para editar_grupo

mysql> create procedure editar_grupo(in cvegrupo varchar(50),nombre varchar(50),

cveprofesor varchar(50),cvealumno varchar(50),cvemateria varchar(50),cvecarrera

varchar(50),periodo varchar(20))

    -> begin

    -> update grupos set cvegrupo=cvegrupo,nombre=nombre,cveprofesor=cveprofesor

,cvealumno=cvealumno,cvemateria=cvemateria,cvecarrera=cvecarrera,periodo=periodo

;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call editar_grupo('58','tercero','58','85','9','02','2015-2016')//

Query OK, 1 row affected (0.00 sec)

 

mysql> select * from grupos//

+----------+---------+-------------+-----------+------------+------------+------

-----+

 

 

 

 

| cvegrupo | nombre  | cveprofesor | cvealumno | cvemateria | cvecarrera | perio

do   |

+----------+---------+-------------+-----------+------------+------------+------

-----+

| 58       | tercero | 58          | 85        | 9          | 02         | 2015-

2016 |

+----------+---------+-------------+-----------+------------+------------+------

-----+

1 row in set (0.00 sec)

9. Crea un procedimiento para eliminar los registros de las tablas que ya fueron creadas. Con los mismos campos que tienen cada una de las tablas.

·     Crea un procedimiento para eliminar_alumno

mysql> create procedure eliminar_alumno(in cvealumno varchar(30))

    -> begin

    -> delete from alumnos where cvealumno=cvealumno;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> select * from alumnos//

Empty set (0.00 sec)

·     Crea un procedimiento para eliminar_profesor

mysql> create procedure eliminar_profesor(in cveprofesor varchar(50))

    -> begin

    -> delete from profesores where cveprofesor=cveprofesor;

    -> end;

    -> //

Query OK, 0 rows affected (0.27 sec)

 

mysql> select * from profesores//

Empty set (0.00 sec)

·     Crea un procedimiento para eliminar_materia

mysql> create procedure eliminar_materia(in cvemateria varchar(50))

    -> begin

    -> delete from materias where cvemateria=cvemateria;

 

 

 

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> select * from materias//

Empty set (0.00 sec)

·     Crea un procedimiento para eliminar_calificacion

mysql> create procedure eliminar_calificacion(in cvealumno varchar(30))

    -> begin

    -> delete from calificaciones where cvealumno=cvealumno;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> select * from calificaciones//

Empty set (0.00 sec)

·     Crea un procedimiento para eliminar_carrera

mysql> create procedure eliminar_carrera(in cvealumno varchar(30))

    -> begin

    -> delete from carreras where cvealumno=cvealumno;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> select * from carreras//

Empty set (0.00 sec)

·     Crea un procedimiento para eliminar_grupo.

mysql> create procedure eliminar_grupo(in cvegrupo varchar(50))

    -> begin

    -> delete from grupos where cvegrupo_cvegrupo;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> select * from grupos//

Empty set (0.00 sec)

 

 

 

10.      Crea un procedimiento para visualizar los registros de las tablas que ya fueron creadas.

·     Crea un procedimiento para agregar_alumno

mysql> create procedure ver_alumno()

    -> begin

    -> select * from alumnos;

    -> end;

    -> //

Query OK, 0 rows affected (1.51 sec)

 

mysql> call ver_alumno//

Empty set (0.63 sec)

Query OK, 0 rows affected (0.63 sec)

·     Crea un procedimiento para agregar_profesor

mysql> create procedure ver_profesor()

    -> begin

    -> select * from profesores;

    -> end;

    -> //

Query OK, 0 rows affected (0.06 sec)

 

mysql> call ver_profesor//

Empty set (0.27 sec)

 

Query OK, 0 rows affected (0.27 sec)

·     Crea un procedimiento para agregar_materia

mysql> create procedure ver_materia()

    -> begin

    -> select * from materias;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call ver_materia//

Empty set (0.08 sec)

 

Query OK, 0 rows affected (0.08 sec)

 

·     Crea un procedimiento para agregar_calificacion

mysql> create procedure ver_calificacion()

    -> begin

    -> select * from calificaciones;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call ver_calificacion//

Empty set (0.09 sec)

 

Query OK, 0 rows affected (0.09 sec)

·     Crea un procedimiento para agregar_carrera

mysql> create procedure ver_carrera()

    -> begin

    -> select * from carreras;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call ver_carrera//

Empty set (0.10 sec)

 

Query OK, 0 rows affected (0.11 sec)

 

·     Crea un procedimiento para agregar_grupo.

 

mysql> create procedure ver_grupo()

    -> begin

    -> select * from grupos;

    -> end;

    -> //

Query OK, 0 rows affected (0.00 sec)

 

mysql> call ver_grupo//

Empty set (0.10 sec)

 

Query OK, 0 rows affected (0.11 sec)

 

No hay comentarios.:

Publicar un comentario