· 6 years ago · May 25, 2019, 02:34 PM
1/* ---------------------------------------------------- */
2/* Generated by Enterprise Architect Version 13.5 */
3/* Created On : 25-May-2019 9:31:01 AM */
4/* DBMS : MySql */
5/* ---------------------------------------------------- */
6
7SET FOREIGN_KEY_CHECKS=0
8;
9
10/* Drop Tables */
11
12DROP TABLE IF EXISTS `alumnos` CASCADE
13;
14
15DROP TABLE IF EXISTS `alumnos_registro_curso` CASCADE
16;
17
18DROP TABLE IF EXISTS `curso` CASCADE
19;
20
21DROP TABLE IF EXISTS `profesores` CASCADE
22;
23
24DROP TABLE IF EXISTS `registro_cursos` CASCADE
25;
26
27/* Create Tables */
28
29CREATE TABLE `alumnos`
30(
31 `id_alumno` INT NOT NULL AUTO_INCREMENT,
32 `nombre_alumno` VARCHAR(50) NOT NULL,
33 `apellidos_alumno` VARCHAR(100) NULL,
34 `email` VARCHAR(50) NULL,
35 `telefono` VARCHAR(50) NULL,
36 CONSTRAINT `PK_Table1` PRIMARY KEY (`id_alumno` ASC)
37)
38
39;
40
41CREATE TABLE `alumnos_registro_curso`
42(
43 `id_alumno_curso` INT NOT NULL AUTO_INCREMENT,
44 `id_alumno` INT NULL,
45 `id_registro_curso` INT NULL,
46 `fecha_inscripcion` DATE NULL,
47 `promocion` VARCHAR(50) NULL,
48 `comentarios` VARCHAR(50) NULL,
49 CONSTRAINT `PK_Table1` PRIMARY KEY (`id_alumno_curso` ASC)
50)
51
52;
53
54CREATE TABLE `curso`
55(
56 `id_curso` INT NOT NULL AUTO_INCREMENT,
57 `nombre_curso` VARCHAR(30) NOT NULL,
58 `descripcion_curso` VARCHAR(150) NULL,
59 `costo` DOUBLE(10,2) NULL,
60 `no_horas` INT NULL,
61 CONSTRAINT `PK_Table1` PRIMARY KEY (`id_curso` ASC)
62)
63
64;
65
66CREATE TABLE `profesores`
67(
68 `id_profesor` INT NOT NULL AUTO_INCREMENT,
69 `nombre_profesor` VARCHAR(50) NOT NULL,
70 `apellidos_profesor` VARCHAR(100) NULL,
71 `email` VARCHAR(50) NULL,
72 `telefono` VARCHAR(50) NULL,
73 CONSTRAINT `PK_Table1` PRIMARY KEY (`id_profesor` ASC)
74)
75
76;
77
78CREATE TABLE `registro_cursos`
79(
80 `id_registro_curso` INT NOT NULL AUTO_INCREMENT,
81 `id_curso` INT NULL,
82 `fecha_inicio` DATE NULL,
83 `fecha_fin` DATE NULL,
84 `comentarios` VARCHAR(50) NULL,
85 `ubicacion` VARCHAR(50) NULL,
86 `id_profesor` INT NULL,
87 CONSTRAINT `PK_Table1` PRIMARY KEY (`id_registro_curso` ASC)
88)
89
90;
91
92/* Create Primary Keys, Indexes, Uniques, Checks */
93
94ALTER TABLE `alumnos_registro_curso`
95 ADD INDEX `IXFK_alumnos_registro_curso_alumnos` (`id_alumno` ASC)
96;
97
98ALTER TABLE `alumnos_registro_curso`
99 ADD INDEX `IXFK_alumnos_registro_curso_registro_cursos` (`id_registro_curso` ASC)
100;
101
102ALTER TABLE `registro_cursos`
103 ADD INDEX `IXFK_registro_cursos_curso` (`id_curso` ASC)
104;
105
106ALTER TABLE `registro_cursos`
107 ADD INDEX `IXFK_registro_cursos_profesores` (`id_profesor` ASC)
108;
109
110/* Create Foreign Key Constraints */
111
112ALTER TABLE `alumnos_registro_curso`
113 ADD CONSTRAINT `FK_alumnos_registro_curso_alumnos`
114 FOREIGN KEY (`id_alumno`) REFERENCES `alumnos` (`id_alumno`) ON DELETE Restrict ON UPDATE Restrict
115;
116
117ALTER TABLE `alumnos_registro_curso`
118 ADD CONSTRAINT `FK_alumnos_registro_curso_registro_cursos`
119 FOREIGN KEY (`id_registro_curso`) REFERENCES `registro_cursos` (`id_registro_curso`) ON DELETE Restrict ON UPDATE Restrict
120;
121
122ALTER TABLE `registro_cursos`
123 ADD CONSTRAINT `FK_registro_cursos_curso`
124 FOREIGN KEY (`id_curso`) REFERENCES `curso` (`id_curso`) ON DELETE Restrict ON UPDATE Restrict
125;
126
127ALTER TABLE `registro_cursos`
128 ADD CONSTRAINT `FK_registro_cursos_profesores`
129 FOREIGN KEY (`id_profesor`) REFERENCES `profesores` (`id_profesor`) ON DELETE Restrict ON UPDATE Restrict
130;
131
132SET FOREIGN_KEY_CHECKS=1
133;