· 6 years ago · Jan 27, 2020, 08:54 PM
1SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
2SET AUTOCOMMIT = 0;
3START TRANSACTION;
4SET time_zone = "+00:00";
5
6
7/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
8/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
9/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
10/*!40101 SET NAMES utf8mb4 */;
11
12CREATE DATABASE IF NOT EXISTS `chronos`;
13
14USE `chronos`;
15
16CREATE TABLE `centros_trabajo` (
17 `centro_trabajo_id` int(11) NOT NULL,
18 `nombre` varchar(50) NOT NULL,
19 `empresa_id` varchar(9) DEFAULT NULL
20) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
21
22INSERT INTO `centros_trabajo` (`centro_trabajo_id`, `nombre`, `empresa_id`) VALUES
23(1, 'Oficina Central', 'A47666675'),
24(2, 'Seat Sucursal', 'J2531497B'),
25(3, 'Cap Olesa', 'N8287533G'),
26(4, 'Telepizza Sant Boi', 'P6449645H'),
27(5, 'Flexo Automotive', 'Q6793350G'),
28(6, 'Bar los Torreznos', 'U2656326B');
29
30CREATE TABLE `departamentos` (
31 `departamento_id` int(11) NOT NULL,
32 `nombre` varchar(150) NOT NULL,
33 `empresa_id` varchar(9) DEFAULT NULL
34) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
35
36INSERT INTO `departamentos` (`departamento_id`, `nombre`, `empresa_id`) VALUES
37(1, 'Desarrollo', 'A47666675'),
38(2, 'Marketing', 'U2656326B'),
39(3, 'Movilidad', 'J2531497B'),
40(4, 'Compras', 'N8287533G');
41
42CREATE TABLE `empresas` (
43 `cif` varchar(9) NOT NULL,
44 `nombre` varchar(150) DEFAULT NULL,
45 `direccion` varchar(150) DEFAULT NULL,
46 `codigo_postal` varchar(5) DEFAULT NULL,
47 `poblacion` varchar(150) DEFAULT NULL,
48 `provincia` varchar(100) DEFAULT NULL,
49 `telefono` varchar(20) DEFAULT NULL,
50 `email` varchar(100) DEFAULT NULL,
51 `web` varchar(100) DEFAULT NULL,
52 `logo_url` varchar(100) DEFAULT NULL,
53 `pais_id` int(11) DEFAULT NULL
54) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
55
56INSERT INTO `empresas` (`cif`, `nombre`, `direccion`, `codigo_postal`, `poblacion`, `provincia`, `telefono`, `email`, `web`, `logo_url`, `pais_id`) VALUES
57('A47666675', 'Chronos', 'CAMINO CATALUNYA, 65', '08830', 'Sant Boi de Llobregat', 'Barcelona', '654328765', 'chronos@chornos.com', NULL, NULL, 61),
58('J2531497B', 'RUSCAPE SA', 'CARRERA NUEVA, 3', '44949', 'GALVE', 'Barcelona', '654328742', 'lgl50kok@hotmail.co.uk', NULL, NULL, 61),
59('N8287533G', 'Subaph Sa', 'Cuesta Real, 98', '46768', 'Aldaia', 'Barcelona', '652343432', 'sbv5wbxrur@netscape.net', NULL, NULL, 61),
60('P6449645H', 'Ruscape Sa', 'Carrera Nueva, 3', '44949', 'Galve', 'Barcelona', '651235667', 'lgl50kok@hotmail.co.uk', NULL, NULL, 61),
61('Q6793350G', 'BABYLAGE SA', 'CORREDERA DE ESPAÑA, 0', '31964', 'URROZ', 'Barcelona', '642346784', '6g6j5vk0iy@usa.com', NULL, NULL, 61),
62('U2656326B', 'Domimint Sl', 'Camino Mayor, 80', '37257', 'Paradinas De San Juan', 'Barcelona', '612757852', 'pefxbqi55@lycos.nl', NULL, NULL, 61),
63('U9439287E', 'Telegue Sa', 'Cuesta Real, 37', '19142', 'Navas De Jadraque, Las', 'Barcelona', '732842091', '3rg08d5l0@netscape.net', NULL, NULL, 61),
64('V1436932F', 'Virgus Sl', 'Rambla Real, 5', '13482', 'Villar Del Pozo', 'Barcelona', '611234334', 'cob860t0@hotmail.com', NULL, NULL, 61);
65
66CREATE TABLE `horarios` (
67 `horario_id` int(11) NOT NULL,
68 `empresa_id` varchar(9) DEFAULT NULL,
69 `nombre` varchar(100) DEFAULT NULL,
70 `lunes_entrada` time DEFAULT NULL,
71 `lunes_salida` time DEFAULT NULL,
72 `martes_entrada` time DEFAULT NULL,
73 `martes_salida` time DEFAULT NULL,
74 `miercoles_entrada` time DEFAULT NULL,
75 `miercoles_salida` time DEFAULT NULL,
76 `jueves_entrada` time DEFAULT NULL,
77 `jueves_salida` time DEFAULT NULL,
78 `viernes_entrada` time DEFAULT NULL,
79 `viernes_salida` time DEFAULT NULL,
80 `sabado_entrada` time DEFAULT NULL,
81 `sabado_salida` time DEFAULT NULL,
82 `domingo_entrada` time DEFAULT NULL,
83 `domingo_salida` time DEFAULT NULL,
84 `descanso_entrada` time DEFAULT NULL,
85 `descanso_salida` time DEFAULT NULL
86) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
87
88INSERT INTO `horarios` (`horario_id`, `empresa_id`, `nombre`, `lunes_entrada`, `lunes_salida`, `martes_entrada`, `martes_salida`, `miercoles_entrada`, `miercoles_salida`, `jueves_entrada`, `jueves_salida`, `viernes_entrada`, `viernes_salida`, `sabado_entrada`, `sabado_salida`, `domingo_entrada`, `domingo_salida`, `descanso_entrada`, `descanso_salida`) VALUES
89(1, 'A47666675', 'Chronos', '09:00:00', '18:00:00', '09:00:00', '18:00:00', '09:00:00', '18:00:00', '09:00:00', '18:00:00', '09:00:00', '18:00:00', '09:00:00', '18:00:00', '09:00:00', '12:00:00', '12:00:00', '13:00:00'),
90(2, 'P6449645H', 'Semana 15', '09:00:00', '18:00:00', '08:00:00', '18:00:00', '09:00:00', '18:00:00', '09:00:00', '18:00:00', '09:00:00', '18:00:00', '09:00:00', '18:00:00', '08:30:00', '18:00:00', '12:00:00', '13:00:00'),
91(3, 'Q6793350G', 'Junio', '08:30:00', '18:00:00', '08:30:00', '18:00:00', '08:30:00', '18:00:00', '08:30:00', '18:00:00', '08:30:00', '18:00:00', '08:30:00', '18:00:00', '08:30:00', '18:00:00', '12:00:00', '13:00:00');
92
93CREATE TABLE `paises` (
94 `pais_id` int(11) NOT NULL,
95 `nombre` varchar(150) NOT NULL
96) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
97
98INSERT INTO `paises` (`pais_id`, `nombre`) VALUES
99(1, 'Afganistán'),
100(2, 'Albania'),
101(3, 'Alemania'),
102(4, 'Algeria'),
103(5, 'Andorra'),
104(6, 'Angola'),
105(7, 'Anguilla'),
106(8, 'Antigua y Barbuda'),
107(9, 'Antillas Holandesas'),
108(10, 'Arabia Saudita'),
109(11, 'Argentina'),
110(12, 'Armenia'),
111(13, 'Aruba'),
112(14, 'Australia'),
113(15, 'Austria'),
114(16, 'Azerbaiyán'),
115(17, 'Bahamas'),
116(18, 'Bahrein'),
117(19, 'Bangladesh'),
118(20, 'Barbados'),
119(21, 'Belice'),
120(22, 'Benín'),
121(23, 'Bermudas'),
122(24, 'Bielorrusia'),
123(25, 'Bolivia'),
124(26, 'Bosnia y Herzegovina'),
125(27, 'Botsuana'),
126(28, 'Brasil'),
127(29, 'Brunéi'),
128(30, 'Bulgaria'),
129(31, 'Burkina Faso'),
130(32, 'Burundi'),
131(33, 'Bután'),
132(34, 'Bélgica'),
133(35, 'Cabo Verde'),
134(36, 'Camboya'),
135(37, 'Camerún'),
136(38, 'Canadá'),
137(39, 'Chad'),
138(40, 'Chile'),
139(41, 'China'),
140(42, 'Chipre'),
141(43, 'Colombia'),
142(44, 'Comores'),
143(45, 'Congo (Brazzaville)'),
144(46, 'Congo (Kinshasa)'),
145(47, 'Corea del Norte'),
146(48, 'Corea del Sur'),
147(49, 'Costa Rica'),
148(50, 'Costa de Marfil'),
149(51, 'Croacia'),
150(52, 'Cuba'),
151(53, 'Dinamarca'),
152(54, 'Ecuador'),
153(55, 'Egipto'),
154(56, 'El Salvador'),
155(57, 'Emiratos árabes Unidos'),
156(58, 'Eritrea'),
157(59, 'Eslovaquia'),
158(60, 'Eslovenia'),
159(61, 'España'),
160(62, 'Estados Unidos'),
161(63, 'Estonia'),
162(64, 'Etiopía'),
163(65, 'Filipinas'),
164(66, 'Finlandia'),
165(67, 'Fiyi'),
166(68, 'Francia'),
167(69, 'Gabón'),
168(70, 'Gambia'),
169(71, 'Georgia'),
170(72, 'Ghana'),
171(73, 'Gibraltar'),
172(74, 'Granada'),
173(75, 'Grecia'),
174(76, 'Groenlandia'),
175(77, 'Guadalupe'),
176(78, 'Guatemala'),
177(79, 'Guernsey'),
178(80, 'Guinea'),
179(81, 'Guinea Ecuatorial'),
180(82, 'Guinea-'),
181(83, 'Guyana'),
182(84, 'Haiti'),
183(85, 'Honduras'),
184(86, 'Hong Kong'),
185(87, 'Hungría'),
186(88, 'India'),
187(89, 'Indonesia'),
188(90, 'Irak'),
189(91, 'Irlanda'),
190(92, 'Irán'),
191(93, 'Isla Pitcairn'),
192(94, 'Isla de Man'),
193(95, 'Islandia'),
194(96, 'Islas Cook'),
195(97, 'Islas Feroe'),
196(98, 'Islas Salomón'),
197(99, 'Islas Turcas y Caicos'),
198(100, 'Islas Virgenes Británicas'),
199(101, 'Israel'),
200(102, 'Italia'),
201(103, 'Jamaica'),
202(104, 'Japón'),
203(105, 'Jersey'),
204(106, 'Jordania'),
205(107, 'Kazajstán'),
206(108, 'Kenia'),
207(109, 'Kirguistán'),
208(110, 'Kiribati'),
209(111, 'Kuwait'),
210(112, 'Laos'),
211(113, 'Lesotho'),
212(114, 'Letonia'),
213(115, 'Liberia'),
214(116, 'Libia'),
215(117, 'Liechtenstein'),
216(118, 'Lituania'),
217(119, 'Luxemburgo'),
218(120, 'Líbano'),
219(121, 'Macedonia'),
220(122, 'Madagascar'),
221(123, 'Malasia'),
222(124, 'Malawi'),
223(125, 'Maldivas'),
224(126, 'Malta'),
225(127, 'Malí'),
226(128, 'Marruecos'),
227(129, 'Martinica'),
228(130, 'Mauricio'),
229(131, 'Mauritania'),
230(132, 'Moldavia'),
231(133, 'Mongolia'),
232(134, 'Mozambique'),
233(135, 'Myanmar'),
234(136, 'México'),
235(137, 'Mónaco'),
236(138, 'Namibia'),
237(139, 'Nauru'),
238(140, 'Nepal'),
239(141, 'Nicaragua'),
240(142, 'Nigeria'),
241(143, 'Norfolk Island'),
242(144, 'Noruega'),
243(145, 'Nueva Caledonia'),
244(146, 'Nueva Zelanda'),
245(147, 'Níger'),
246(148, 'Omán'),
247(149, 'Pakistán'),
248(150, 'Panamá'),
249(151, 'Papúa--Nueva Guinea'),
250(152, 'Paraguay'),
251(153, 'Países Bajos, Holanda'),
252(154, 'Perú'),
253(155, 'Polinesia Francesa'),
254(156, 'Polonia'),
255(157, 'Portugal'),
256(158, 'Puerto Rico'),
257(159, 'Qatar'),
258(160, 'Reino Unido'),
259(161, 'República Dominicana'),
260(162, 'República Checa'),
261(163, 'Reunión'),
262(164, 'Ruanda'),
263(165, 'Rumanía'),
264(166, 'Rusia'),
265(167, 'Samoa'),
266(168, 'San Cristobal y Nevis'),
267(169, 'San Marino'),
268(170, 'San Pedro y Miquelón'),
269(171, 'San Tomé y Príncipe'),
270(172, 'San Vincente y Granadinas'),
271(173, 'Santa Elena'),
272(174, 'Santa Lucía'),
273(175, 'Senegal'),
274(176, 'Serbia y Montenegro'),
275(177, 'Seychelles'),
276(178, 'Sierra Leona'),
277(179, 'Singapur'),
278(180, 'Siria'),
279(181, 'Somalia'),
280(182, 'Sri Lanka'),
281(183, 'Sudáfrica'),
282(184, 'Sudán'),
283(185, 'Suecia'),
284(186, 'Suiza'),
285(187, 'Surinam'),
286(188, 'Swazilandia'),
287(189, 'Sáhara Occidental'),
288(190, 'Tadjikistan'),
289(191, 'Tailandia'),
290(192, 'Taiwan'),
291(193, 'Tanzania'),
292(194, 'Timor Oriental'),
293(195, 'Togo'),
294(196, 'Tokelau'),
295(197, 'Tonga'),
296(198, 'Trinidad y Tobago'),
297(199, 'Turkmenistan'),
298(200, 'Turquía'),
299(201, 'Tuvalu'),
300(202, 'Túnez'),
301(203, 'Ucrania'),
302(204, 'Uganda'),
303(205, 'Uruguay'),
304(206, 'Uzbekistán'),
305(207, 'Vanuatu'),
306(208, 'Venezuela'),
307(209, 'Vietnam'),
308(210, 'Wallis y Futuna'),
309(211, 'Yemen'),
310(212, 'Yibuti Djibouti'),
311(213, 'Zambia'),
312(214, 'Zimbabwe');
313
314CREATE TABLE `puesto_trabajo` (
315 `puesto_trabajo_id` int(11) NOT NULL,
316 `nombre` varchar(50) NOT NULL,
317 `empresa_id` varchar(9) NOT NULL
318) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
319
320INSERT INTO `puesto_trabajo` (`puesto_trabajo_id`, `nombre`, `empresa_id`) VALUES
321(1, 'Programador', 'A47666675'),
322(2, 'Administrador', 'U2656326B'),
323(3, 'Fabricante', 'U9439287E'),
324(4, 'Oficinista', 'J2531497B'),
325(5, 'Contable', 'P6449645H');
326
327CREATE TABLE `registro_horas` (
328 `registro_horas_id` int(11) NOT NULL,
329 `empresa_id` varchar(9) DEFAULT NULL,
330 `usuario_id` varchar(9) DEFAULT NULL,
331 `fecha` date DEFAULT NULL,
332 `entrada` datetime DEFAULT NULL,
333 `salida` datetime DEFAULT NULL
334) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
335
336CREATE TABLE `registro_horas_mensual` (
337`usuario_id` varchar(9)
338,`mes` int(2)
339,`anno` int(4)
340,`horas_mensuales` time
341);
342
343CREATE TABLE `registro_horas_sumadas` (
344`registro_horas_id` int(11)
345,`empresa_id` varchar(9)
346,`usuario_id` varchar(9)
347,`fecha` date
348,`entrada` datetime
349,`salida` datetime
350,`horas_trabajadas` time
351);
352
353CREATE TABLE `usuarios` (
354 `dni` varchar(9) NOT NULL,
355 `password` longtext DEFAULT NULL,
356 `nombre` varchar(50) DEFAULT NULL,
357 `apellidos` varchar(100) DEFAULT NULL,
358 `direccion` varchar(150) DEFAULT NULL,
359 `fecha_nacimiento` date DEFAULT NULL,
360 `codigo_postal` varchar(5) DEFAULT NULL,
361 `poblacion` varchar(100) DEFAULT NULL,
362 `provincia` varchar(100) DEFAULT NULL,
363 `pais_id` int(11) DEFAULT NULL,
364 `nacionalidad` varchar(100) DEFAULT NULL,
365 `telefono1` varchar(20) DEFAULT NULL,
366 `telefono2` varchar(20) DEFAULT NULL,
367 `email` varchar(100) DEFAULT NULL,
368 `num_seg_social` varchar(15) DEFAULT NULL,
369 `fecha_alta` date DEFAULT NULL,
370 `empresa_id` varchar(50) DEFAULT NULL,
371 `departamento_id` int(11) DEFAULT NULL,
372 `puesto_trabajo_id` int(11) DEFAULT NULL,
373 `centro_trabajo_id` int(11) DEFAULT NULL,
374 `rol` varchar(50) DEFAULT NULL,
375 `horario_id` int(11) DEFAULT NULL,
376 `dias_vacaciones` int(11) DEFAULT NULL,
377 `url_foto` varchar(100) DEFAULT NULL,
378 `activo` tinyint(4) DEFAULT NULL
379) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
380
381INSERT INTO `usuarios` (`dni`, `password`, `nombre`, `apellidos`, `direccion`, `fecha_nacimiento`, `codigo_postal`, `poblacion`, `provincia`, `pais_id`, `nacionalidad`, `telefono1`, `telefono2`, `email`, `num_seg_social`, `fecha_alta`, `empresa_id`, `departamento_id`, `puesto_trabajo_id`, `centro_trabajo_id`, `rol`, `horario_id`, `dias_vacaciones`, `url_foto`, `activo`) VALUES
382('53899024L', '3c9909afec25354d551dae21590bb26e38d53f2173b8d3dc3eee4c047e7ab1c1eb8b85103e3be7ba613b31bb5c9c36214dc9f14a42fd7a2fdb84856bca5c44c2', 'Jesus', 'Espinosa Mohamed', 'Travesía Real, 74', '1931-12-15', '08771', 'Navarcles', 'Barcelona', 61, NULL, '780998560', NULL, 'e3wevlrb@whoever.com', '069170155483', NULL, 'A47666675', 1, 2, 1, 'superusuario', 1, 30, NULL, NULL),
383('69091955R', '3c9909afec25354d551dae21590bb26e38d53f2173b8d3dc3eee4c047e7ab1c1eb8b85103e3be7ba613b31bb5c9c36214dc9f14a42fd7a2fdb84856bca5c44c2', 'Jose', 'Palma Portillo', 'Pasaje Iglesia, 56', '1948-11-12', '26195', 'Pradillo', 'Rioja, La', 61, NULL, '637237492', NULL, 'a3jdn9eqd@btinternet.com', '300460106213', NULL, 'U2656326B', 3, 1, 2, 'rrhh', 3, 30, NULL, NULL),
384('83060119N', '3c9909afec25354d551dae21590bb26e38d53f2173b8d3dc3eee4c047e7ab1c1eb8b85103e3be7ba613b31bb5c9c36214dc9f14a42fd7a2fdb84856bca5c44c2', 'Christian', 'Sosa Puig', 'Camino Catalunya, 65', '1986-07-04', '26195', 'Pradillo', 'Rioja, La', 61, NULL, '663279443', NULL, '15cyq9yej@aol.com', '016692086362', NULL, 'P6449645H', 2, 3, 3, 'usuario', 2, 30, NULL, NULL);
385
386CREATE TABLE `vacaciones` (
387 `vacaciones_id` int(11) NOT NULL,
388 `usuario_id` varchar(9) DEFAULT NULL,
389 `empresa_id` varchar(9) DEFAULT NULL,
390 `desde` date DEFAULT NULL,
391 `hasta` date DEFAULT NULL,
392 `estado` varchar(20) DEFAULT NULL
393) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
394
395DROP TABLE IF EXISTS `registro_horas_mensual`;
396
397CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `registro_horas_mensual` AS select `registro_horas_sumadas`.`usuario_id` AS `usuario_id`,month(`registro_horas_sumadas`.`fecha`) AS `mes`,year(`registro_horas_sumadas`.`fecha`) AS `anno`,sec_to_time(sum(time_to_sec(`registro_horas_sumadas`.`horas_trabajadas`))) AS `horas_mensuales` from `registro_horas_sumadas` group by `registro_horas_sumadas`.`usuario_id`,month(`registro_horas_sumadas`.`fecha`),year(`registro_horas_sumadas`.`fecha`) ;
398
399DROP TABLE IF EXISTS `registro_horas_sumadas`;
400
401CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `registro_horas_sumadas` AS select `registro_horas`.`registro_horas_id` AS `registro_horas_id`,`registro_horas`.`empresa_id` AS `empresa_id`,`registro_horas`.`usuario_id` AS `usuario_id`,`registro_horas`.`fecha` AS `fecha`,`registro_horas`.`entrada` AS `entrada`,`registro_horas`.`salida` AS `salida`,sec_to_time(timestampdiff(SECOND,`registro_horas`.`entrada`,`registro_horas`.`salida`)) AS `horas_trabajadas` from `registro_horas` ;
402
403ALTER TABLE `centros_trabajo`
404 ADD PRIMARY KEY (`centro_trabajo_id`),
405 ADD KEY `fk_centro_trabajo_empresa_idx` (`empresa_id`);
406
407ALTER TABLE `departamentos`
408 ADD PRIMARY KEY (`departamento_id`),
409 ADD KEY `fk_empresa_departamento` (`empresa_id`);
410
411ALTER TABLE `empresas`
412 ADD PRIMARY KEY (`cif`),
413 ADD KEY `fk_pais_empresa` (`pais_id`);
414
415ALTER TABLE `horarios`
416 ADD PRIMARY KEY (`horario_id`),
417 ADD KEY `fk_horarios_detalle_empresas` (`empresa_id`);
418
419ALTER TABLE `paises`
420 ADD PRIMARY KEY (`pais_id`);
421
422ALTER TABLE `puesto_trabajo`
423 ADD PRIMARY KEY (`puesto_trabajo_id`),
424 ADD KEY `fk_puesto_empresa_idx` (`empresa_id`);
425
426ALTER TABLE `registro_horas`
427 ADD PRIMARY KEY (`registro_horas_id`),
428 ADD KEY `fk_registro_horas_usuarios` (`usuario_id`),
429 ADD KEY `fk_empresa_registro_horas` (`empresa_id`);
430
431ALTER TABLE `usuarios`
432 ADD PRIMARY KEY (`dni`),
433 ADD KEY `unq_trabajadores_empresa_id` (`empresa_id`),
434 ADD KEY `fk_usuarios_departamentos` (`departamento_id`),
435 ADD KEY `fk_puesto_trabajo` (`puesto_trabajo_id`),
436 ADD KEY `fk_horario` (`horario_id`),
437 ADD KEY `fk_usuarios_paises` (`pais_id`),
438 ADD KEY `fk_usuarios_centro_trabajo_idx` (`centro_trabajo_id`);
439
440ALTER TABLE `vacaciones`
441 ADD PRIMARY KEY (`vacaciones_id`),
442 ADD KEY `fk_vacaciones_empresa` (`empresa_id`),
443 ADD KEY `fk_vacaciones_usuarios` (`usuario_id`);
444
445ALTER TABLE `centros_trabajo`
446 MODIFY `centro_trabajo_id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=7;
447
448ALTER TABLE `departamentos`
449 MODIFY `departamento_id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;
450
451ALTER TABLE `horarios`
452 MODIFY `horario_id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;
453
454ALTER TABLE `puesto_trabajo`
455 MODIFY `puesto_trabajo_id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
456
457ALTER TABLE `registro_horas`
458 MODIFY `registro_horas_id` int(11) NOT NULL AUTO_INCREMENT;
459
460ALTER TABLE `vacaciones`
461 MODIFY `vacaciones_id` int(11) NOT NULL AUTO_INCREMENT;
462
463ALTER TABLE `centros_trabajo`
464 ADD CONSTRAINT `fk_centro_trabajo_empresa` FOREIGN KEY (`empresa_id`) REFERENCES `empresas` (`cif`) ON DELETE NO ACTION ON UPDATE NO ACTION;
465
466ALTER TABLE `departamentos`
467 ADD CONSTRAINT `fk_empresa_departamento` FOREIGN KEY (`empresa_id`) REFERENCES `empresas` (`cif`);
468
469ALTER TABLE `empresas`
470 ADD CONSTRAINT `fk_pais_empresa` FOREIGN KEY (`pais_id`) REFERENCES `paises` (`pais_id`) ON DELETE NO ACTION ON UPDATE NO ACTION;
471
472ALTER TABLE `horarios`
473 ADD CONSTRAINT `fk_horarios_detalle_empresas` FOREIGN KEY (`empresa_id`) REFERENCES `empresas` (`cif`) ON DELETE NO ACTION ON UPDATE NO ACTION;
474
475ALTER TABLE `puesto_trabajo`
476 ADD CONSTRAINT `fk_puesto_empresa` FOREIGN KEY (`empresa_id`) REFERENCES `empresas` (`cif`) ON DELETE NO ACTION ON UPDATE NO ACTION;
477
478ALTER TABLE `registro_horas`
479 ADD CONSTRAINT `fk_empresa_registro_horas` FOREIGN KEY (`empresa_id`) REFERENCES `usuarios` (`empresa_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
480 ADD CONSTRAINT `fk_registro_horas_usuarios` FOREIGN KEY (`usuario_id`) REFERENCES `usuarios` (`dni`) ON DELETE NO ACTION ON UPDATE NO ACTION;
481
482ALTER TABLE `usuarios`
483 ADD CONSTRAINT `fk_horario` FOREIGN KEY (`horario_id`) REFERENCES `horarios` (`horario_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
484 ADD CONSTRAINT `fk_puesto_trabajo` FOREIGN KEY (`puesto_trabajo_id`) REFERENCES `puesto_trabajo` (`puesto_trabajo_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
485 ADD CONSTRAINT `fk_trabajadores_empresas` FOREIGN KEY (`empresa_id`) REFERENCES `empresas` (`cif`) ON DELETE NO ACTION ON UPDATE NO ACTION,
486 ADD CONSTRAINT `fk_usuarios_centro_trabajo` FOREIGN KEY (`centro_trabajo_id`) REFERENCES `centros_trabajo` (`centro_trabajo_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
487 ADD CONSTRAINT `fk_usuarios_departamentos` FOREIGN KEY (`departamento_id`) REFERENCES `departamentos` (`departamento_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
488 ADD CONSTRAINT `fk_usuarios_paises` FOREIGN KEY (`pais_id`) REFERENCES `paises` (`pais_id`) ON DELETE NO ACTION ON UPDATE NO ACTION;
489
490ALTER TABLE `vacaciones`
491 ADD CONSTRAINT `fk_vacaciones_empresa` FOREIGN KEY (`empresa_id`) REFERENCES `usuarios` (`empresa_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
492 ADD CONSTRAINT `fk_vacaciones_usuarios` FOREIGN KEY (`usuario_id`) REFERENCES `usuarios` (`dni`) ON DELETE NO ACTION ON UPDATE NO ACTION;
493COMMIT;
494
495/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
496/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
497/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;