diff --git a/insert.sql b/insert.sql new file mode 100644 index 0000000..00a043b --- /dev/null +++ b/insert.sql @@ -0,0 +1,37 @@ +-- 1) Insertar un par de servicios +--INSERT INTO servicio VALUES ('094123123123','ferelena27@gmail.com','5538836200','Calle D #43 Colonia Modelo, Naucalpan de Juárez, Edo Mex.','2020-01-28 00:00:00','2020-07-28 00:00:00','1996-06-27 00:00:00','1zAAbHd2Gn8E7JougyynxHVLFJCHYM4U7','1ygjJyezG88X6qd-wV3i7PMDfW7yDGAbJ','1qzgUwhXqCRXPiYd0w8TADWB2Ja-0Geqy','1i-mmx-hlOVcdYHxoNM8ym96pwL2YQKxP','servicio y asesoría de cómputo','Lic. Araceli Pérez Palma',1,'2020-03-04 19:25:19','2021-04-26 19:21:57',2990,1,6,28,872,835,'2021-04-26 19:21:56'); +--INSERT INTO servicio VALUES ('091234123123','ferelena27@gmail.com','5538836200','Calle D #43 Colonia Modelo, Naucalpan de Juárez, Edo Mex.','2020-01-28 00:00:00','2020-07-28 00:00:00','1996-06-27 00:00:00','1zAAbHd2Gn8E7JougyynxHVLFJCHYM4U7','1ygjJyezG88X6qd-wV3i7PMDfW7yDGAbJ','1qzgUwhXqCRXPiYd0w8TADWB2Ja-0Geqy','1i-mmx-hlOVcdYHxoNM8ym96pwL2YQKxP','servicio y asesoría de cómputo','Lic. Araceli Pérez Palma',1,'2020-03-04 19:25:19','2021-04-26 19:21:57',2990,1,6,28,872,835,'2021-04-26 19:21:56'); + +-- 2) Insertar cuestionarios, cada uno asociado a un servicio +INSERT INTO Cuestionario ( + idServicio, version, titulo, `desc`, dirigidoA, createdAt +) VALUES +(1, 'v1.0', 'Cuestionario Inicial', 'Descripción breve', 'Alumnos', NOW()), +(2, 'v2.0', 'Cuestionario Avanzado', 'Otro cuestionario', 'Programas', '2025-01-23 10:25:00'); + +-- 3) Insertar en cuestionario_alumno_2 +INSERT INTO cuestionario_alumno_2 ( + idCuestionario, + createdAt, + p12_A_1, + p12_A_2, + p12_A_3, + p12_A_4, + p12_B_1, + p12_B_2 +) VALUES +(1, NOW(), 'respuesta1', 'respuesta2', 'respuesta3', 'respuesta4', 'respuesta5', 'respuesta6'), +(1, '2025-01-23 11:00:00', 'respA', 'respB', 'respC', 'respD', 'respE', 'respF'); + +-- 4) Insertar en cuestionario_programa_2 +INSERT INTO cuestionario_programa_2 ( + idCuestionario, + createdAt, + p3_A_1, + p3_A_2, + p3_A_3, + p3_A_4, + p3_B_1 +) VALUES +(2, NOW(), 'respuesta1', 'respuesta2', 'respuesta3', 'respuesta4', 'respuesta5'), +(2, '2025-01-23 12:15:00', 'respX', 'respY', 'respZ', 'respW', 'respQ'); diff --git a/resp_Iris_Produccion12012025.sql b/resp_Iris_Produccion12012025.sql index 8437807..0a1610b 100644 --- a/resp_Iris_Produccion12012025.sql +++ b/resp_Iris_Produccion12012025.sql @@ -19,6 +19,11 @@ -- Table structure for table `carrera` -- +drop database servicio_test; +create database servicio_test; +use servicio_test; + + DROP TABLE IF EXISTS `carrera`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; diff --git a/schema.sql b/schema.sql new file mode 100644 index 0000000..0d9305a --- /dev/null +++ b/schema.sql @@ -0,0 +1,494 @@ +-- MariaDB dump 10.17 Distrib 10.4.10-MariaDB, for Win64 (AMD64) +-- +-- Host: 132.248.180.82 Database: Iris_Produccion +-- ------------------------------------------------------ +-- Server version 10.6.7-MariaDB + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `carrera` +-- + +DROP TABLE IF EXISTS `carrera`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `carrera` ( + `idCarrera` int(11) NOT NULL AUTO_INCREMENT, + `carrera` varchar(50) NOT NULL, + PRIMARY KEY (`idCarrera`), + UNIQUE KEY `idCarrera` (`idCarrera`) +) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `carrera` +-- + +LOCK TABLES `carrera` WRITE; +/*!40000 ALTER TABLE `carrera` DISABLE KEYS */; +/*!40000 ALTER TABLE `carrera` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `caso_especial` +-- + +DROP TABLE IF EXISTS `caso_especial`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `caso_especial` ( + `idCasoEspecial` int(11) NOT NULL AUTO_INCREMENT, + `creditos` varchar(3) NOT NULL, + `correo` varchar(60) NOT NULL, + `telefono` varchar(15) NOT NULL, + `institucion` varchar(200) DEFAULT NULL, + `dependencia` varchar(200) DEFAULT NULL, + `motivo` varchar(1) DEFAULT NULL, + `direccion` varchar(200) NOT NULL, + `fechaInicio` datetime NOT NULL, + `fechaFin` datetime NOT NULL, + `fechaNacimiento` datetime NOT NULL, + `carpeta` varchar(60) NOT NULL, + `archivoZip` varchar(60) NOT NULL, + `createdAt` datetime NOT NULL, + `updatedAt` datetime NOT NULL, + `idUsuario` int(11) NOT NULL, + `idCarrera` int(11) NOT NULL, + `idStatus` int(11) NOT NULL DEFAULT 1, + PRIMARY KEY (`idCasoEspecial`), + UNIQUE KEY `idCasoEspecial` (`idCasoEspecial`), + KEY `idUsuario` (`idUsuario`), + KEY `idCarrera` (`idCarrera`), + KEY `idStatus` (`idStatus`), + CONSTRAINT `caso_especial_ibfk_1` FOREIGN KEY (`idUsuario`) REFERENCES `usuario` (`idUsuario`) ON DELETE NO ACTION ON UPDATE CASCADE, + CONSTRAINT `caso_especial_ibfk_2` FOREIGN KEY (`idCarrera`) REFERENCES `carrera` (`idCarrera`) ON DELETE NO ACTION ON UPDATE CASCADE, + CONSTRAINT `caso_especial_ibfk_3` FOREIGN KEY (`idStatus`) REFERENCES `status` (`idStatus`) ON DELETE NO ACTION ON UPDATE CASCADE +) ENGINE=InnoDB AUTO_INCREMENT=392 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `caso_especial` +-- + +LOCK TABLES `caso_especial` WRITE; +/*!40000 ALTER TABLE `caso_especial` DISABLE KEYS */; +/*!40000 ALTER TABLE `caso_especial` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `cuestionario_alumno` +-- + +DROP TABLE IF EXISTS `cuestionario_alumno`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `cuestionario_alumno` ( + `idCuestionarioAlumno` int(11) NOT NULL AUTO_INCREMENT, + `sexo` varchar(1) NOT NULL, + `edad` varchar(2) NOT NULL, + `servicioMedico` varchar(100) NOT NULL, + `p1` tinyint(1) NOT NULL, + `p2` tinyint(1) NOT NULL, + `p3` varchar(150) NOT NULL, + `p4` tinyint(1) NOT NULL, + `p5` varchar(7) NOT NULL, + `p6` tinyint(1) NOT NULL, + `p7` tinyint(1) NOT NULL, + `p8` varchar(5) NOT NULL, + `p9` tinyint(1) NOT NULL, + `p10` tinyint(1) NOT NULL, + `p11` tinyint(1) NOT NULL, + `p12` tinyint(1) NOT NULL, + `p13` tinyint(1) NOT NULL, + `p14` varchar(7) NOT NULL, + `p15` varchar(7) NOT NULL, + `p16` varchar(2) NOT NULL, + `p17` varchar(5) NOT NULL, + `p18` tinyint(1) NOT NULL, + `p19` tinyint(1) NOT NULL, + `p20` tinyint(1) NOT NULL, + `p21` varchar(9) NOT NULL, + `p22` varchar(23) NOT NULL, + `p23` varchar(8) NOT NULL, + `p24` varchar(8) NOT NULL, + `p25` tinyint(1) NOT NULL, + `p26` tinyint(1) NOT NULL, + `p27` varchar(400) NOT NULL, + `p28` varchar(1) NOT NULL, + `p29` varchar(1) NOT NULL, + `p30` varchar(400) NOT NULL, + `createdAt` datetime NOT NULL, + PRIMARY KEY (`idCuestionarioAlumno`), + UNIQUE KEY `idCuestionarioAlumno` (`idCuestionarioAlumno`) +) ENGINE=InnoDB AUTO_INCREMENT=13564 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `cuestionario_alumno` +-- + +LOCK TABLES `cuestionario_alumno` WRITE; +/*!40000 ALTER TABLE `cuestionario_alumno` DISABLE KEYS */; +/*!40000 ALTER TABLE `cuestionario_alumno` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `cuestionario_programa` +-- + +DROP TABLE IF EXISTS `cuestionario_programa`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `cuestionario_programa` ( + `idCuestionarioPrograma` int(11) NOT NULL AUTO_INCREMENT, + `actividad1` varchar(400) NOT NULL, + `actividad2` varchar(400) NOT NULL, + `actividad3` varchar(400) NOT NULL, + `actividad4` varchar(400) NOT NULL, + `actividad5` varchar(400) NOT NULL, + `retroalimentacion` varchar(9) NOT NULL, + `p6` varchar(800) DEFAULT NULL, + `p7` varchar(800) NOT NULL, + `createdAt` datetime NOT NULL, + PRIMARY KEY (`idCuestionarioPrograma`), + UNIQUE KEY `idCuestionarioPrograma` (`idCuestionarioPrograma`) +) ENGINE=InnoDB AUTO_INCREMENT=13582 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `cuestionario_programa` +-- + +LOCK TABLES `cuestionario_programa` WRITE; +/*!40000 ALTER TABLE `cuestionario_programa` DISABLE KEYS */; +/*!40000 ALTER TABLE `cuestionario_programa` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `programa` +-- + +DROP TABLE IF EXISTS `programa`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `programa` ( + `idPrograma` int(11) NOT NULL AUTO_INCREMENT, + `institucion` varchar(120) NOT NULL, + `dependencia` varchar(120) NOT NULL, + `programa` varchar(280) NOT NULL, + `clavePrograma` varchar(20) NOT NULL, + `acatlan` tinyint(1) NOT NULL DEFAULT 0, + `activo` tinyint(1) NOT NULL DEFAULT 1, + `idUsuario` int(11) NOT NULL, + PRIMARY KEY (`idPrograma`), + UNIQUE KEY `idPrograma` (`idPrograma`), + KEY `idUsuario` (`idUsuario`), + CONSTRAINT `programa_ibfk_1` FOREIGN KEY (`idUsuario`) REFERENCES `usuario` (`idUsuario`) ON DELETE NO ACTION ON UPDATE CASCADE +) ENGINE=InnoDB AUTO_INCREMENT=11518 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `programa` +-- + +LOCK TABLES `programa` WRITE; +/*!40000 ALTER TABLE `programa` DISABLE KEYS */; +/*!40000 ALTER TABLE `programa` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `servicio` +-- + +DROP TABLE IF EXISTS `servicio`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `servicio` ( + `idServicio` int(11) NOT NULL AUTO_INCREMENT, + `creditos` varchar(3) NOT NULL, + `correo` varchar(60) NOT NULL, + `telefono` varchar(15) DEFAULT NULL, + `direccion` varchar(200) DEFAULT NULL, + `fechaInicio` datetime NOT NULL, + `fechaFin` datetime NOT NULL, + `fechaNacimiento` datetime DEFAULT NULL, + `carpeta` varchar(60) NOT NULL, + `cartaAceptacion` varchar(60) NOT NULL, + `cartaTermino` varchar(60) DEFAULT NULL, + `informeGlobal` varchar(60) DEFAULT NULL, + `programaInterno` varchar(250) DEFAULT NULL, + `profesor` varchar(50) DEFAULT NULL, + `vistoBuenoAcatlan` tinyint(1) DEFAULT NULL, + `createdAt` datetime NOT NULL, + `updatedAt` datetime NOT NULL, + `idUsuario` int(11) NOT NULL, + `idCarrera` int(11) NOT NULL, + `idStatus` int(11) NOT NULL DEFAULT 1, + `idPrograma` int(11) NOT NULL, + `idCuestionarioAlumno` int(11) DEFAULT NULL, + `idCuestionarioPrograma` int(11) DEFAULT NULL, + `fechaLiberacion` datetime DEFAULT NULL, + PRIMARY KEY (`idServicio`), + UNIQUE KEY `idServicio` (`idServicio`), + KEY `idUsuario` (`idUsuario`), + KEY `idCarrera` (`idCarrera`), + KEY `idStatus` (`idStatus`), + KEY `idPrograma` (`idPrograma`), + KEY `idCuestionarioAlumno` (`idCuestionarioAlumno`), + KEY `idCuestionarioPrograma` (`idCuestionarioPrograma`), + CONSTRAINT `servicio_ibfk_1` FOREIGN KEY (`idUsuario`) REFERENCES `usuario` (`idUsuario`) ON DELETE NO ACTION ON UPDATE CASCADE, + CONSTRAINT `servicio_ibfk_2` FOREIGN KEY (`idCarrera`) REFERENCES `carrera` (`idCarrera`) ON DELETE NO ACTION ON UPDATE CASCADE, + CONSTRAINT `servicio_ibfk_3` FOREIGN KEY (`idStatus`) REFERENCES `status` (`idStatus`) ON DELETE NO ACTION ON UPDATE CASCADE, + CONSTRAINT `servicio_ibfk_4` FOREIGN KEY (`idPrograma`) REFERENCES `programa` (`idPrograma`) ON DELETE NO ACTION ON UPDATE CASCADE, + CONSTRAINT `servicio_ibfk_5` FOREIGN KEY (`idCuestionarioAlumno`) REFERENCES `cuestionario_alumno` (`idCuestionarioAlumno`) ON DELETE SET NULL ON UPDATE CASCADE, + CONSTRAINT `servicio_ibfk_6` FOREIGN KEY (`idCuestionarioPrograma`) REFERENCES `cuestionario_programa` (`idCuestionarioPrograma`) ON DELETE SET NULL ON UPDATE CASCADE +) ENGINE=InnoDB AUTO_INCREMENT=17310 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `servicio` +-- + +LOCK TABLES `servicio` WRITE; +/*!40000 ALTER TABLE `servicio` DISABLE KEYS */; +/*!40000 ALTER TABLE `servicio` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `status` +-- + +DROP TABLE IF EXISTS `status`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `status` ( + `idStatus` int(11) NOT NULL AUTO_INCREMENT, + `status` varchar(30) NOT NULL, + PRIMARY KEY (`idStatus`), + UNIQUE KEY `idStatus` (`idStatus`) +) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `status` +-- + +LOCK TABLES `status` WRITE; +/*!40000 ALTER TABLE `status` DISABLE KEYS */; +/*!40000 ALTER TABLE `status` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `tipo_usuario` +-- + +DROP TABLE IF EXISTS `tipo_usuario`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `tipo_usuario` ( + `idTipoUsuario` int(11) NOT NULL AUTO_INCREMENT, + `tipoUsuario` varchar(15) NOT NULL, + PRIMARY KEY (`idTipoUsuario`), + UNIQUE KEY `idTipoUsuario` (`idTipoUsuario`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `tipo_usuario` +-- + +LOCK TABLES `tipo_usuario` WRITE; +/*!40000 ALTER TABLE `tipo_usuario` DISABLE KEYS */; +/*!40000 ALTER TABLE `tipo_usuario` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `usuario` +-- + +DROP TABLE IF EXISTS `usuario`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `usuario` ( + `idUsuario` int(11) NOT NULL AUTO_INCREMENT, + `usuario` varchar(100) NOT NULL, + `password` varchar(60) DEFAULT NULL, + `nombre` varchar(70) DEFAULT NULL, + `activo` tinyint(1) NOT NULL, + `idTipoUsuario` int(11) NOT NULL, + PRIMARY KEY (`idUsuario`), + UNIQUE KEY `idUsuario` (`idUsuario`), + UNIQUE KEY `usuario` (`usuario`), + KEY `idTipoUsuario` (`idTipoUsuario`), + CONSTRAINT `usuario_ibfk_1` FOREIGN KEY (`idTipoUsuario`) REFERENCES `tipo_usuario` (`idTipoUsuario`) ON DELETE NO ACTION ON UPDATE CASCADE +) ENGINE=InnoDB AUTO_INCREMENT=19930 DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `usuario` +-- + +LOCK TABLES `usuario` WRITE; +/*!40000 ALTER TABLE `usuario` DISABLE KEYS */; +/*!40000 ALTER TABLE `usuario` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Dumping routines for database 'Iris_Produccion' +-- +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-01-12 23:25:49 + + + + +/* CREATE TABLE `servicio` ( + `idServicio` INT PRIMARY KEY +); */ + +DROP TABLE IF EXISTS `Cuestionario`; +CREATE TABLE `Cuestionario` ( + `idCuestionario` INT PRIMARY KEY NOT NULL AUTO_INCREMENT, + + `idCuestionarioAlumno` INT, -- Agregado para relación con alumnos + `idCuestionarioPrograma` INT, -- Agregado para relación con programas + + `idCuestionarioAlumno1` INT, -- Agregado para relación con alumnos + `idCuestionarioPrograma1` INT, -- Agregado para relación con programas + + `idServicio` INT, + `version` VARCHAR(50), + `titulo` VARCHAR(50), + `desc` VARCHAR(50), + `dirigidoA` VARCHAR(50), + `createdAt` DATETIME +); + + +DROP TABLE IF EXISTS `cuestionario_alumno_2`; +CREATE TABLE `cuestionario_alumno_2` ( + `idCuestionarioAlumno2` INT PRIMARY KEY NOT NULL AUTO_INCREMENT, + + `createdAt` DATETIME, + + + `p12_A_1` VARCHAR(50), + `p12_A_2` VARCHAR(50), + `p12_A_3` VARCHAR(50), + `p12_A_4` VARCHAR(50), + `p12_B_1` VARCHAR(50), + `p12_B_2` VARCHAR(50), + `p12_B_3` VARCHAR(50), + `p12_B_4` VARCHAR(50), + `p12_C_1` VARCHAR(50), + `p12_C_2` VARCHAR(50), + `p12_C_3` VARCHAR(50), + `p12_C_4` VARCHAR(50), + `p10_1` VARCHAR(50), + `p10_2` VARCHAR(50), + `p10_3` VARCHAR(50), + `p11_1` VARCHAR(50), + `p11_2` VARCHAR(50), + `p11_3` VARCHAR(50), + `p11_4` VARCHAR(50), + `p17_1` VARCHAR(50), + `p17_2` VARCHAR(50), + `p17_3` VARCHAR(50), + `p3_1` VARCHAR(50), + `p3_2` VARCHAR(50), + `p3_3` VARCHAR(50), + `p3_4` VARCHAR(50), + `p12_D_1` VARCHAR(50), + `p12_D_2` VARCHAR(50), + `p12_D_3` VARCHAR(50), + `p12_D_4` VARCHAR(50), + `p12_D_5` VARCHAR(50), + `p1` VARCHAR(150), + `p2` VARCHAR(50), + `p4` VARCHAR(50), + `p5` VARCHAR(50), + `p6` VARCHAR(50), + `p7` VARCHAR(50), + `p8` VARCHAR(50), + `p9` VARCHAR(50), + `p13` VARCHAR(50), + `p14` VARCHAR(50), + `p15` VARCHAR(50), + `p16` VARCHAR(50), + `p18` VARCHAR(50) +); + +DROP TABLE IF EXISTS `cuestionario_programa_2`; +CREATE TABLE `cuestionario_programa_2` ( + `idCuestionarioPrograma2` INT PRIMARY KEY NOT NULL AUTO_INCREMENT, + `createdAt` DATETIME, + + `p3_A_1` VARCHAR(50), + `p3_A_2` VARCHAR(50), + `p3_A_3` VARCHAR(50), + `p3_A_4` VARCHAR(50), + `p3_B_1` VARCHAR(50), + `p3_B_2` VARCHAR(50), + `p3_B_3` VARCHAR(50), + `p3_B_4` VARCHAR(50), + `p3_C_1` VARCHAR(50), + `p3_C_2` VARCHAR(50), + `p3_C_3` VARCHAR(50), + `p3_C_4` VARCHAR(50), + `p3_C_5` VARCHAR(50), + `p3_D_1` VARCHAR(50), + `p3_D_2` VARCHAR(50), + `p3_D_3` VARCHAR(50), + `p3_D_4` VARCHAR(50), + `p3_D_5` VARCHAR(50), + `p3_E_1` VARCHAR(50), + `p1` VARCHAR(50), + `p2` VARCHAR(50), + `p4` VARCHAR(50), + `p5` VARCHAR(50), + `p6` VARCHAR(50) +); + + +-- Relaciones corregidas +ALTER TABLE `Cuestionario` +ADD FOREIGN KEY (`idServicio`) REFERENCES `servicio` (`idServicio`); + +ALTER TABLE `Cuestionario` +ADD FOREIGN KEY (`idCuestionarioAlumno`) REFERENCES `cuestionario_alumno_2` (`idCuestionarioAlumno2`); + +ALTER TABLE `Cuestionario` +ADD FOREIGN KEY (`idCuestionarioPrograma`) REFERENCES `cuestionario_programa_2` (`idCuestionarioPrograma2`); + + + + +ALTER TABLE `Cuestionario` +ADD FOREIGN KEY (`idCuestionarioAlumno1`) REFERENCES `cuestionario_alumno` (`idCuestionarioAlumno`); + +ALTER TABLE `Cuestionario` +ADD FOREIGN KEY (`idCuestionarioPrograma1`) REFERENCES `cuestionario_programa` (`idCuestionarioPrograma`); + + + + + diff --git a/server/controller/CuestionarioAlumno2/nuevo.js b/server/controller/CuestionarioAlumno2/nuevo.js index c764f69..67e139a 100644 --- a/server/controller/CuestionarioAlumno2/nuevo.js +++ b/server/controller/CuestionarioAlumno2/nuevo.js @@ -66,7 +66,7 @@ const nuevo = async (body) => { // throw new Error('Id status no valido.'); // si no coincide con nada, error por defecto - Cuestionario.findOne({}); + // Cuestionario.findOne({}); let dataCuestionario = await Cuestionario.findOne({ where: { idServicio, dirigidoA: 'estudiantes' }, @@ -77,12 +77,10 @@ const nuevo = async (body) => { throw new Error('Ya existe un cuestionario para este servicio social'); } - let respuestasRegistradas = await CuestionarioAlumno2.create({ ...body }); - console.log('despues de registrar cuestionario', respuestasRegistradas); let cuestionarioRegistro = await Cuestionario.create({ idServicio, - idCuestionarioAlumno: respuestasRegistradas.idCuestionarioAlumno, + // idCuestionarioAlumno: respuestasRegistradas.idCuestionarioAlumno, version: '2', dirigidoA: 'estudiantes', titulo: 'Cuestionario de Alumn v2', @@ -90,6 +88,13 @@ const nuevo = async (body) => { createdAt: new Date(), }); + +console.log("datos a registrar en la tabla cuestionarioAlumno2", { ...body, idCuestionario: cuestionarioRegistro.idCuestionario } ); + + let respuestasRegistradas = await CuestionarioAlumno2.create({ ...body, idCuestionario: cuestionarioRegistro.idCuestionario }); + console.log('despues de registrar cuestionario', respuestasRegistradas); + + console.log('cuestionario registrado', cuestionarioRegistro); return cuestionarioRegistro; diff --git a/server/controller/CuestionarioPrograma2/nuevo.js b/server/controller/CuestionarioPrograma2/nuevo.js index aeeb240..d050a21 100644 --- a/server/controller/CuestionarioPrograma2/nuevo.js +++ b/server/controller/CuestionarioPrograma2/nuevo.js @@ -57,6 +57,10 @@ const nuevo = async (body) => { throw new Error(messageByStatus[res.idStatus]); */ // throw new Error('Id status no valido.'); // si no coincide con nada, error por defecto + + + + let dataCuestionario = await Cuestionario.findOne({ where: { idServicio, dirigidoA: 'programas' }, }); @@ -66,14 +70,9 @@ const nuevo = async (body) => { throw new Error('Ya existe un cuestionario para este servicio social'); } - let respuestasRegistradas = await CuestionarioPrograma2.create({ - ...body, - }); - console.log('despues de registrar cuestionario', respuestasRegistradas); - - // si el cuestionario ya existe solo hay que actualizar el id de cuestionarioprograma o alumno + let cuestionarioRegistro = await Cuestionario.create({ idServicio, idCuestionarioPrograma: respuestasRegistradas.idCuestionarioPrograma, @@ -86,6 +85,21 @@ const nuevo = async (body) => { console.log('cuestionario registrado', cuestionarioRegistro); + + + + + + let respuestasRegistradas = await CuestionarioPrograma2.create({ + ...body, + idCuestionario: cuestionarioRegistro.idCuestionario + }); + + console.log('despues de registrar cuestionario', respuestasRegistradas); + + // si el cuestionario ya existe solo hay que actualizar el id de cuestionarioprograma o alumno + + return cuestionarioRegistro; }) diff --git a/server/db/tablas/Cuestionario.js b/server/db/tablas/Cuestionario.js index 4502023..aa91461 100644 --- a/server/db/tablas/Cuestionario.js +++ b/server/db/tablas/Cuestionario.js @@ -1,3 +1,5 @@ +/* + const { DataTypes, Model } = require('sequelize'); const sequelize = require('../../config/sequelize.conf'); const Usuario = require('./Usuario'); @@ -27,14 +29,6 @@ Cuestionario.init( - idCuestionarioAlumno: { - type: DataTypes.INTEGER, - allowNull: true, - }, - idCuestionarioPrograma: { - type: DataTypes.INTEGER, - allowNull: true, - }, version: { @@ -69,6 +63,60 @@ Cuestionario.init( +Cuestionario.belongsTo(Servicio, { foreignKey: 'idServicio' }); +Servicio.hasMany(Cuestionario, { foreignKey: 'idServicio' }); + + + +Cuestionario.belongsTo(CuestionarioAlumno2, { foreignKey: 'idCuestionarioAlumno2' }); +CuestionarioAlumno2.hasOne(Cuestionario, { foreignKey: 'idCuestionarioAlumno2' }); + +Cuestionario.belongsTo(CuestionarioPrograma2, { foreignKey: 'idCuestionarioPrograma2' }); +CuestionarioPrograma2.hasOne(Cuestionario, { foreignKey: 'idCuestionarioPrograma2' }); + + +module.exports = Cuestionario; + +*/ + + + + +const { DataTypes, Model } = require('sequelize'); +const sequelize = require('../../config/sequelize.conf'); +const Servicio = require('./Servicio'); + +class Cuestionario extends Model {} + +Cuestionario.init( + { + idCuestionario: { + type: DataTypes.INTEGER, + primaryKey: true, + autoIncrement: true, + }, + idServicio: { + type: DataTypes.INTEGER, + allowNull: false, + references: { + model: Servicio, + key: 'idServicio', + }, + }, + version: DataTypes.STRING(50), + titulo: DataTypes.STRING(50), + desc: DataTypes.STRING(50), + dirigidoA: DataTypes.STRING(50), + createdAt: DataTypes.DATE, + }, + { + sequelize, + modelName: 'Cuestionario', + tableName: 'Cuestionario', + timestamps: false, + } +); + Cuestionario.belongsTo(Servicio, { foreignKey: 'idServicio' }); Servicio.hasMany(Cuestionario, { foreignKey: 'idServicio' }); diff --git a/server/db/tablas/CuestionarioAlumno2.js b/server/db/tablas/CuestionarioAlumno2.js index 0e8e1d6..af8cc42 100644 --- a/server/db/tablas/CuestionarioAlumno2.js +++ b/server/db/tablas/CuestionarioAlumno2.js @@ -1,6 +1,12 @@ + +/* const { DataTypes, Model } = require('sequelize'); const sequelize = require('../../config/sequelize.conf'); +const Cuestionario = require('./Cuestionario'); + + + class CuestionarioAlumno2 extends Model {} CuestionarioAlumno2.init( @@ -13,6 +19,18 @@ CuestionarioAlumno2.init( autoIncrement: true, }, + + + idCuestionario: { + type: DataTypes.INTEGER, + allowNull: true, + }, + + + + + + p1: { type: DataTypes.STRING(100), allowNull: true, @@ -213,4 +231,253 @@ CuestionarioAlumno2.init( } ); + + + +CuestionarioAlumno2.belongsTo(Cuestionario, { foreignKey: 'idCuestionario' }); +Cuestionario.hasMany(CuestionarioAlumno2, { foreignKey: 'idCuestionario' }); + + + + + + +module.exports = CuestionarioAlumno2; + + +*/ + + +const { DataTypes, Model } = require('sequelize'); +const sequelize = require('../../config/sequelize.conf'); + +class CuestionarioAlumno2 extends Model {} + +CuestionarioAlumno2.init( + { + idCuestionarioAlumno2: { + type: DataTypes.INTEGER, + primaryKey: true, + autoIncrement: true, + }, + idCuestionario: { + type: DataTypes.INTEGER, + allowNull: true, + }, + + + + + + + p1: { + type: DataTypes.STRING(100), + allowNull: true, + }, + p2: { + type: DataTypes.STRING(50), + allowNull: true, + }, + p4: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p5: { + type: DataTypes.STRING(50), + allowNull: true, + }, + p6: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p7: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p8: { + type: DataTypes.STRING(50), + allowNull: true, + }, + p9: { + type: DataTypes.STRING(5), + allowNull: true, + }, + + // p3_*: se definen como string (el JSON trae si/no) + p3_1: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p3_2: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p3_3: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p3_4: { + type: DataTypes.STRING(5), + allowNull: true, + }, + + // p10_* y p11_* + p10_1: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p10_2: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p10_3: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p11_1: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p11_2: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p11_3: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p11_4: { + type: DataTypes.STRING(20), + allowNull: true, + }, + + // p12_A_*, p12_B_*, p12_C_*, p12_D_* + // Ajusta el tamaño de la cadena según requieras + p12_A_1: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_A_2: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_A_3: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_A_4: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_B_1: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_B_2: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_B_3: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_B_4: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_C_1: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_C_2: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_C_3: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_C_4: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_D_1: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_D_2: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_D_3: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_D_4: { + type: DataTypes.STRING(20), + allowNull: true, + }, + p12_D_5: { + type: DataTypes.STRING(20), + allowNull: true, + }, + + // p13, p14, p15, p16... + p13: { + type: DataTypes.STRING(100), + allowNull: true, + }, + p14: { + type: DataTypes.STRING(100), + allowNull: true, + }, + p15: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p16: { + type: DataTypes.STRING(50), + allowNull: true, + }, + + // p17_* + p17_1: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p17_2: { + type: DataTypes.STRING(5), + allowNull: true, + }, + p17_3: { + type: DataTypes.STRING(5), + allowNull: true, + }, + + // p18 + p18: { + type: DataTypes.STRING(50), + allowNull: true, + }, + + + + }, + { + sequelize, + modelName: 'CuestionarioAlumno2', + tableName: 'cuestionario_alumno_2', + timestamps: true, + createdAt: true, + updatedAt: false, + } +); + +// Importación después de la definición para evitar dependencias circulares +const Cuestionario = require('./Cuestionario'); + +// Definir relaciones después de importar correctamente +CuestionarioAlumno2.belongsTo(Cuestionario, { foreignKey: 'idCuestionario' }); +Cuestionario.hasMany(CuestionarioAlumno2, { foreignKey: 'idCuestionario' }); + module.exports = CuestionarioAlumno2; diff --git a/server/db/tablas/CuestionarioPrograma2.js b/server/db/tablas/CuestionarioPrograma2.js index 780f173..29d9ad7 100644 --- a/server/db/tablas/CuestionarioPrograma2.js +++ b/server/db/tablas/CuestionarioPrograma2.js @@ -1,6 +1,9 @@ const { DataTypes, Model } = require('sequelize'); const sequelize = require('../../config/sequelize.conf'); +const Cuestionario = require('./Cuestionario'); + + class CuestionarioPrograma2 extends Model {} CuestionarioPrograma2.init( @@ -13,6 +16,14 @@ CuestionarioPrograma2.init( autoIncrement: true, }, + + idCuestionario: { + type: DataTypes.INTEGER, + allowNull: true, + }, + + + // Sección p3_A_* p3_A_1: { type: DataTypes.STRING(50), @@ -131,4 +142,13 @@ CuestionarioPrograma2.init( } ); + +CuestionarioPrograma2.belongsTo(Cuestionario, { foreignKey: 'idCuestionario' }); +Cuestionario.hasMany(CuestionarioPrograma2, { foreignKey: 'idCuestionario' }); + + + + + + module.exports = CuestionarioPrograma2; diff --git a/test.env copy b/test.env copy new file mode 100644 index 0000000..39c99fd --- /dev/null +++ b/test.env copy @@ -0,0 +1,10 @@ +PORT=3000 +DB = servicio_test +USERDB = root +PASSWORDDB = mypass +HOSTDB = host.docker.internal +TYPEDB = mariadb + +ESCOLARES = 127.0.0.1 +ESCOLARES_PASS = mypass + diff --git a/update.sql b/update.sql index 75c20cf..a200a29 100644 --- a/update.sql +++ b/update.sql @@ -1,135 +1,127 @@ - /* CREATE TABLE `servicio` ( - `idServicio` INT PRIMARY KEY +`idServicio` INT PRIMARY KEY ); */ +--DROP TABLE IF EXISTS `Cuestionario`; -DROP TABLE IF EXISTS `Cuestionario`; -CREATE TABLE `Cuestionario` ( - `idCuestionario` INT PRIMARY KEY NOT NULL AUTO_INCREMENT, - - `idCuestionarioAlumno` INT, -- Agregado para relación con alumnos - `idCuestionarioPrograma` INT, -- Agregado para relación con programas - - `idCuestionarioAlumno1` INT, -- Agregado para relación con alumnos - `idCuestionarioPrograma1` INT, -- Agregado para relación con programas - - `idServicio` INT, - `version` VARCHAR(50), - `titulo` VARCHAR(50), - `desc` VARCHAR(50), - `dirigidoA` VARCHAR(50), - `createdAt` DATETIME -); +CREATE TABLE + `Cuestionario` ( + `idCuestionario` INT PRIMARY KEY NOT NULL AUTO_INCREMENT, + `idServicio` INT, + `version` VARCHAR(50), + `titulo` VARCHAR(50), + `desc` VARCHAR(50), + `dirigidoA` VARCHAR(50), + `createdAt` DATETIME + ); + --`idCuestionarioAlumno` INT, -- Agregado para relación con alumnos + --`idCuestionarioPrograma` INT, -- Agregado para relación con programas + -- `idCuestionarioAlumno1` INT, -- Agregado para relación con alumnos + -- `idCuestionarioPrograma1` INT, -- Agregado para relación con programas DROP TABLE IF EXISTS `cuestionario_alumno_2`; -CREATE TABLE `cuestionario_alumno_2` ( - `idCuestionarioAlumno2` INT PRIMARY KEY NOT NULL AUTO_INCREMENT, - `createdAt` DATETIME, - - - `p12_A_1` VARCHAR(50), - `p12_A_2` VARCHAR(50), - `p12_A_3` VARCHAR(50), - `p12_A_4` VARCHAR(50), - `p12_B_1` VARCHAR(50), - `p12_B_2` VARCHAR(50), - `p12_B_3` VARCHAR(50), - `p12_B_4` VARCHAR(50), - `p12_C_1` VARCHAR(50), - `p12_C_2` VARCHAR(50), - `p12_C_3` VARCHAR(50), - `p12_C_4` VARCHAR(50), - `p10_1` VARCHAR(50), - `p10_2` VARCHAR(50), - `p10_3` VARCHAR(50), - `p11_1` VARCHAR(50), - `p11_2` VARCHAR(50), - `p11_3` VARCHAR(50), - `p11_4` VARCHAR(50), - `p17_1` VARCHAR(50), - `p17_2` VARCHAR(50), - `p17_3` VARCHAR(50), - `p3_1` VARCHAR(50), - `p3_2` VARCHAR(50), - `p3_3` VARCHAR(50), - `p3_4` VARCHAR(50), - `p12_D_1` VARCHAR(50), - `p12_D_2` VARCHAR(50), - `p12_D_3` VARCHAR(50), - `p12_D_4` VARCHAR(50), - `p12_D_5` VARCHAR(50), - `p1` VARCHAR(150), - `p2` VARCHAR(50), - `p4` VARCHAR(50), - `p5` VARCHAR(50), - `p6` VARCHAR(50), - `p7` VARCHAR(50), - `p8` VARCHAR(50), - `p9` VARCHAR(50), - `p13` VARCHAR(50), - `p14` VARCHAR(50), - `p15` VARCHAR(50), - `p16` VARCHAR(50), - `p18` VARCHAR(50) -); +CREATE TABLE + `cuestionario_alumno_2` ( + `idCuestionarioAlumno2` INT PRIMARY KEY NOT NULL AUTO_INCREMENT, + `idCuestionario` INT, + `createdAt` DATETIME, + `p12_A_1` VARCHAR(50), + `p12_A_2` VARCHAR(50), + `p12_A_3` VARCHAR(50), + `p12_A_4` VARCHAR(50), + `p12_B_1` VARCHAR(50), + `p12_B_2` VARCHAR(50), + `p12_B_3` VARCHAR(50), + `p12_B_4` VARCHAR(50), + `p12_C_1` VARCHAR(50), + `p12_C_2` VARCHAR(50), + `p12_C_3` VARCHAR(50), + `p12_C_4` VARCHAR(50), + `p10_1` VARCHAR(50), + `p10_2` VARCHAR(50), + `p10_3` VARCHAR(50), + `p11_1` VARCHAR(50), + `p11_2` VARCHAR(50), + `p11_3` VARCHAR(50), + `p11_4` VARCHAR(50), + `p17_1` VARCHAR(50), + `p17_2` VARCHAR(50), + `p17_3` VARCHAR(50), + `p3_1` VARCHAR(50), + `p3_2` VARCHAR(50), + `p3_3` VARCHAR(50), + `p3_4` VARCHAR(50), + `p12_D_1` VARCHAR(50), + `p12_D_2` VARCHAR(50), + `p12_D_3` VARCHAR(50), + `p12_D_4` VARCHAR(50), + `p12_D_5` VARCHAR(50), + `p1` VARCHAR(150), + `p2` VARCHAR(50), + `p4` VARCHAR(50), + `p5` VARCHAR(50), + `p6` VARCHAR(50), + `p7` VARCHAR(50), + `p8` VARCHAR(50), + `p9` VARCHAR(50), + `p13` VARCHAR(50), + `p14` VARCHAR(50), + `p15` VARCHAR(50), + `p16` VARCHAR(50), + `p18` VARCHAR(50) + ); DROP TABLE IF EXISTS `cuestionario_programa_2`; -CREATE TABLE `cuestionario_programa_2` ( - `idCuestionarioPrograma2` INT PRIMARY KEY NOT NULL AUTO_INCREMENT, - `createdAt` DATETIME, - - `p3_A_1` VARCHAR(50), - `p3_A_2` VARCHAR(50), - `p3_A_3` VARCHAR(50), - `p3_A_4` VARCHAR(50), - `p3_B_1` VARCHAR(50), - `p3_B_2` VARCHAR(50), - `p3_B_3` VARCHAR(50), - `p3_B_4` VARCHAR(50), - `p3_C_1` VARCHAR(50), - `p3_C_2` VARCHAR(50), - `p3_C_3` VARCHAR(50), - `p3_C_4` VARCHAR(50), - `p3_C_5` VARCHAR(50), - `p3_D_1` VARCHAR(50), - `p3_D_2` VARCHAR(50), - `p3_D_3` VARCHAR(50), - `p3_D_4` VARCHAR(50), - `p3_D_5` VARCHAR(50), - `p3_E_1` VARCHAR(50), - `p1` VARCHAR(50), - `p2` VARCHAR(50), - `p4` VARCHAR(50), - `p5` VARCHAR(50), - `p6` VARCHAR(50) -); +CREATE TABLE + `cuestionario_programa_2` ( + `idCuestionarioPrograma2` INT PRIMARY KEY NOT NULL AUTO_INCREMENT, + `idCuestionario` INT, + `createdAt` DATETIME, + `p3_A_1` VARCHAR(50), + `p3_A_2` VARCHAR(50), + `p3_A_3` VARCHAR(50), + `p3_A_4` VARCHAR(50), + `p3_B_1` VARCHAR(50), + `p3_B_2` VARCHAR(50), + `p3_B_3` VARCHAR(50), + `p3_B_4` VARCHAR(50), + `p3_C_1` VARCHAR(50), + `p3_C_2` VARCHAR(50), + `p3_C_3` VARCHAR(50), + `p3_C_4` VARCHAR(50), + `p3_C_5` VARCHAR(50), + `p3_D_1` VARCHAR(50), + `p3_D_2` VARCHAR(50), + `p3_D_3` VARCHAR(50), + `p3_D_4` VARCHAR(50), + `p3_D_5` VARCHAR(50), + `p3_E_1` VARCHAR(50), + `p1` VARCHAR(50), + `p2` VARCHAR(50), + `p4` VARCHAR(50), + `p5` VARCHAR(50), + `p6` VARCHAR(50), + `p7` VARCHAR(50) + ); -- Relaciones corregidas -ALTER TABLE `Cuestionario` -ADD FOREIGN KEY (`idServicio`) REFERENCES `servicio` (`idServicio`); +ALTER TABLE `Cuestionario` ADD FOREIGN KEY (`idServicio`) REFERENCES `servicio` (`idServicio`); -ALTER TABLE `Cuestionario` -ADD FOREIGN KEY (`idCuestionarioAlumno`) REFERENCES `cuestionario_alumno_2` (`idCuestionarioAlumno2`); +ALTER TABLE cuestionario_alumno ADD COLUMN idCuestionario INT; +ALTER TABLE cuestionario_programa ADD COLUMN idCuestionario INT; -ALTER TABLE `Cuestionario` -ADD FOREIGN KEY (`idCuestionarioPrograma`) REFERENCES `cuestionario_programa_2` (`idCuestionarioPrograma2`); +ALTER TABLE `cuestionario_alumno` ADD FOREIGN KEY (`idCuestionario`) REFERENCES `Cuestionario` (`idCuestionario`); +ALTER TABLE `cuestionario_alumno_2` ADD FOREIGN KEY (`idCuestionario`) REFERENCES `Cuestionario` (`idCuestionario`); +ALTER TABLE `cuestionario_programa` ADD FOREIGN KEY (`idCuestionario`) REFERENCES `Cuestionario` (`idCuestionario`); +ALTER TABLE `cuestionario_programa_2` ADD FOREIGN KEY (`idCuestionario`) REFERENCES `Cuestionario` (`idCuestionario`); - - - -ALTER TABLE `Cuestionario` -ADD FOREIGN KEY (`idCuestionarioAlumno1`) REFERENCES `cuestionario_alumno` (`idCuestionarioAlumno`); - -ALTER TABLE `Cuestionario` -ADD FOREIGN KEY (`idCuestionarioPrograma1`) REFERENCES `cuestionario_programa` (`idCuestionarioPrograma`); - - - - - - - INSERT INTO Cuestionario (idCuestionarioAlumno1, idCuestionarioPrograma1, idServicio) SELECT - s.idCuestionarioAlumno, s.idCuestionarioPrograma, s.idServicio FROM servicio s; \ No newline at end of file +--ALTER TABLE `Cuestionario` +--ADD FOREIGN KEY (`idCuestionarioAlumno`) REFERENCES `cuestionario_alumno_2` (`idCuestionarioAlumno2`); +--ALTER TABLE `Cuestionario` +--ADD FOREIGN KEY (`idCuestionarioPrograma`) REFERENCES `cuestionario_programa_2` (`idCuestionarioPrograma2`); +--ALTER TABLE `Cuestionario` +--ADD FOREIGN KEY (`idCuestionarioAlumno1`) REFERENCES `cuestionario_alumno` (`idCuestionarioAlumno`); +--ALTER TABLE `Cuestionario` +--ADD FOREIGN KEY (`idCuestionarioPrograma1`) REFERENCES `cuestionario_programa` (`idCuestionarioPrograma`);