Base de datos actualizada competencias
This commit is contained in:
parent
e07f3eca9c
commit
45368a331f
|
@ -1,75 +0,0 @@
|
|||
-- Crear la base de datos
|
||||
CREATE DATABASE IF NOT EXISTS diplomaster;
|
||||
USE diplomaster;
|
||||
|
||||
-- Tabla de usuarios (profesores)
|
||||
CREATE TABLE `usuarios` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`nombre` VARCHAR(100) NOT NULL,
|
||||
`email` VARCHAR(100) UNIQUE NOT NULL,
|
||||
`password` VARCHAR(255) NOT NULL,
|
||||
`aprobado` BOOLEAN NOT NULL DEFAULT 1,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- Tabla de cursos
|
||||
CREATE TABLE `cursos` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`nombre` VARCHAR(100) NOT NULL,
|
||||
`descripcion` VARCHAR(250) DEFAULT NULL,
|
||||
`estado` ENUM('activo', 'completado', 'archivado') NOT NULL DEFAULT 'activo',
|
||||
`tipo` ENUM('inyeccion', 'pildora', 'tratamiento') NOT NULL,
|
||||
`profesor_id` INT(11) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
FOREIGN KEY (`profesor_id`) REFERENCES `usuarios`(`id`) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- Tabla de alumnos
|
||||
CREATE TABLE `alumnos` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`nombre` VARCHAR(100) NOT NULL,
|
||||
`email` VARCHAR(100) UNIQUE NOT NULL,
|
||||
`telefono` VARCHAR(15) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- Tabla para vincular alumnos con cursos
|
||||
CREATE TABLE `alumnos_cursos` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`alumno_id` INT(11) NOT NULL,
|
||||
`curso_id` INT(11) NOT NULL,
|
||||
`estado` ENUM('cursando', 'aprobado', 'reprobado') NOT NULL DEFAULT 'cursando',
|
||||
PRIMARY KEY (`id`),
|
||||
FOREIGN KEY (`alumno_id`) REFERENCES `alumnos`(`id`) ON DELETE CASCADE,
|
||||
FOREIGN KEY (`curso_id`) REFERENCES `cursos`(`id`) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- Tabla de diplomas
|
||||
CREATE TABLE `diplomas` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`alumno_curso_id` INT(11) NOT NULL,
|
||||
`codigo_unico` VARCHAR(20) NOT NULL UNIQUE,
|
||||
`fecha_emision` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
FOREIGN KEY (`alumno_curso_id`) REFERENCES `alumnos_cursos`(`id`) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- Datos iniciales
|
||||
INSERT INTO `usuarios` (`nombre`, `email`, `password`, `aprobado`) VALUES
|
||||
('Profesor Demo', 'profesor@demo.com', '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', 1);
|
||||
|
||||
INSERT INTO `cursos` (`nombre`, `descripcion`, `estado`, `tipo`, `profesor_id`) VALUES
|
||||
('Curso Básico', 'Curso introductorio', 'activo', 'inyeccion', 1),
|
||||
('Curso Avanzado', 'Para alumnos avanzados', 'activo', 'tratamiento', 1);
|
||||
|
||||
INSERT INTO `alumnos` (`nombre`, `email`, `telefono`) VALUES
|
||||
('Alumno Uno', 'alumno1@demo.com', '123456789'),
|
||||
('Alumno Dos', 'alumno2@demo.com', '987654321');
|
||||
|
||||
INSERT INTO `alumnos_cursos` (`alumno_id`, `curso_id`, `estado`) VALUES
|
||||
(1, 1, 'aprobado'),
|
||||
(2, 1, 'cursando'),
|
||||
(1, 2, 'cursando');
|
||||
|
||||
INSERT INTO `diplomas` (`alumno_curso_id`, `codigo_unico`) VALUES
|
||||
(1, 'DIPL-000001');
|
Loading…
Reference in New Issue