-- https://www.phpmyadmin.net/
--
-- Servidor: 127.0.0.1
-- Tiempo de generación: 15-05-2023 a las 07:08:00
-- Versión del servidor: 10.4.27-MariaDB
-- Versión de PHP: 8.0.25

START TRANSACTION;



--
-- Base de datos: `biblioteca`
--

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `autores`
--

CREATE TABLE `autores` (
  `IdAutor` int(11) NOT NULL,
  `NombreAutor` varchar(100) NOT NULL,
  `ApellidoAutor` varchar(100) NOT NULL,
  `PaisAutor` varchar(15) NOT NULL,
  `EstadoAutor` varchar(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Volcado de datos para la tabla `autores`
--

INSERT INTO `autores` (`IdAutor`, `NombreAutor`, `ApellidoAutor`, `PaisAutor`, `EstadoAutor`) VALUES
(11, 'Andres ', 'Diaz', 'Colombia', '1'),
(12, 'prueba', 'Diaz', 'Colombia', '1');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `categorias`
--

CREATE TABLE `categorias` (
  `IdCategoria` int(11) NOT NULL,
  `NombreCategoria` varchar(100) NOT NULL,
  `DescripcionCategoria` varchar(255) NOT NULL,
  `EstadoCategoria` varchar(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Volcado de datos para la tabla `categorias`
--

INSERT INTO `categorias` (`IdCategoria`, `NombreCategoria`, `DescripcionCategoria`, `EstadoCategoria`) VALUES
(71, 'Medicina', 'LIBROS DE ANATOMIA E INFECCIONES', '0'),
(72, 'Historia', 'Renacentista', '1'),
(74, 'Deportes', 'Documentacion de entramiento deportivo', '1');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `colecciones`
--

CREATE TABLE `colecciones` (
  `IdColeccion` int(11) NOT NULL,
  `NombreColeccion` varchar(100) NOT NULL,
  `DescripcionColeccion` varchar(255) NOT NULL,
  `EstadoColeccion` varchar(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Volcado de datos para la tabla `colecciones`
--

INSERT INTO `colecciones` (`IdColeccion`, `NombreColeccion`, `DescripcionColeccion`, `EstadoColeccion`) VALUES
(1, 'El Tiempo', 'Libro semanal 2023', '1'),
(3, 'General', 'Libros sin Coleccion', '0');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `editoriales`
--

CREATE TABLE `editoriales` (
  `IdEditorial` int(11) NOT NULL,
  `NombreEditorial` varchar(100) NOT NULL,
  `TelefonoEditorial` varchar(15) NOT NULL,
  `DireccionEditorial` varchar(255) NOT NULL,
  `CorreoEditorial` varchar(100) NOT NULL,
  `PaginaWebEditorial` varchar(255) NOT NULL,
  `PaisEditorial` varchar(50) NOT NULL,
  `EstadoEditorial` varchar(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Volcado de datos para la tabla `editoriales`
--

INSERT INTO `editoriales` (`IdEditorial`, `NombreEditorial`, `TelefonoEditorial`, `DireccionEditorial`, `CorreoEditorial`, `PaginaWebEditorial`, `PaisEditorial`, `EstadoEditorial`) VALUES
(3, 'Norma', '7485955', 'cra xx # 15-17', 'norma@gmail.com', 'www.norma.com', 'Colombia', '1');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `ejemplares`
--

CREATE TABLE `ejemplares` (
  `IdEjemplar` int(11) NOT NULL,
  `NumeroRegistroEjemplar` varchar(100) NOT NULL,
  `FechaAdquisicionEjemplar` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  `NotaEjemplar` varchar(100) NOT NULL,
  `ReservaEjemplar` varchar(1) NOT NULL DEFAULT '0',
  `EstadoEjemplar` varchar(1) NOT NULL DEFAULT '1',
  `IdLibro` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Volcado de datos para la tabla `ejemplares`
--

INSERT INTO `ejemplares` (`IdEjemplar`, `NumeroRegistroEjemplar`, `FechaAdquisicionEjemplar`, `NotaEjemplar`, `ReservaEjemplar`, `EstadoEjemplar`, `IdLibro`) VALUES
(8, '002', '2023-05-14 19:23:00', '', '0', '1', 34);

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `idiomas`
--

CREATE TABLE `idiomas` (
  `IdIdioma` int(11) NOT NULL,
  `NombreIdioma` varchar(100) NOT NULL,
  `EstadoIdioma` varchar(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Volcado de datos para la tabla `idiomas`
--

INSERT INTO `idiomas` (`IdIdioma`, `NombreIdioma`, `EstadoIdioma`) VALUES
(1, 'Español', '1'),
(2, 'Inglés', '1'),
(3, 'Latín', '1'),
(4, 'Italiano', '1'),
(8, 'Ruso', '1');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `libros`
--

CREATE TABLE `libros` (
  `IdLibro` int(11) NOT NULL,
  `TituloLibro` varchar(100) NOT NULL,
  `ISBNLibro` varchar(100) NOT NULL,
  `FechaPubliacionLibro` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  `NotaLibro` varchar(255) NOT NULL,
  `EstadoLibro` varchar(1) NOT NULL,
  `IdAutor` int(11) NOT NULL,
  `IdCategoria` int(11) NOT NULL,
  `IdColeccion` int(11) NOT NULL,
  `IdEditorial` int(11) NOT NULL,
  `IdIdioma` int(11) NOT NULL,
  `IdTipo` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Volcado de datos para la tabla `libros`
--

INSERT INTO `libros` (`IdLibro`, `TituloLibro`, `ISBNLibro`, `FechaPubliacionLibro`, `NotaLibro`, `EstadoLibro`, `IdAutor`, `IdCategoria`, `IdColeccion`, `IdEditorial`, `IdIdioma`, `IdTipo`) VALUES
(34, '100 de soledad', '456', '2023-05-14 16:49:00', '', '1', 11, 72, 1, 3, 1, 3),
(35, 'SFSDFSDF', '', '2023-05-15 00:18:00', '', '1', 11, 72, 1, 3, 1, 3);

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `multas`
--

CREATE TABLE `multas` (
  `IdMulta` int(11) NOT NULL,
  `ValorMulta` int(11) NOT NULL,
  `EstadoMulta` int(11) NOT NULL DEFAULT 1,
  `FechaCreacionMulta` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  `FechaPagoMulta` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  `IdPrestamo` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `prestamos`
--

CREATE TABLE `prestamos` (
  `IdPrestamo` int(11) NOT NULL,
  `FechaPrestamo` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  `FechaDevolucionPrestamoPlaneada` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  `FechaDevolucionPrestamoRealizada` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  `NotasPrestamos` varchar(255) NOT NULL,
  `IdEjemplar` int(11) NOT NULL,
  `IdUsuario` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `rol`
--

CREATE TABLE `rol` (
  `IdRol` int(11) NOT NULL,
  `NombreRol` varchar(15) NOT NULL,
  `AutoresRol` varchar(4) NOT NULL,
  `CategoriasRol` varchar(4) NOT NULL,
  `ColeccionesRol` varchar(4) NOT NULL,
  `EditorialesRol` varchar(4) NOT NULL,
  `EjemplaresRol` varchar(4) NOT NULL,
  `IdiomasRol` varchar(4) NOT NULL,
  `LibrosRol` varchar(4) NOT NULL,
  `MultasRol` varchar(4) NOT NULL,
  `PrestamosRol` varchar(4) NOT NULL,
  `RolesRol` varchar(4) NOT NULL,
  `TiposRol` varchar(4) NOT NULL,
  `UsuariosRol` varchar(4) NOT NULL,
  `EstadoRol` varchar(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;

--
-- Volcado de datos para la tabla `rol`
--

INSERT INTO `rol` (`IdRol`, `NombreRol`, `AutoresRol`, `CategoriasRol`, `ColeccionesRol`, `EditorialesRol`, `EjemplaresRol`, `IdiomasRol`, `LibrosRol`, `MultasRol`, `PrestamosRol`, `RolesRol`, `TiposRol`, `UsuariosRol`, `EstadoRol`) VALUES
(2, 'Estandar', '', '', '', '', '', '', '', '', 'CU', '', '', '', '1'),
(4, 'Estandar2', '', '', 'CRUD', '', '', '', '', '', '', '', '', '', '1'),
(5, 'Administrador', 'CRUD', 'CRUD', 'CRUD', '', 'CRUD', 'CRUD', 'CRUD', '', 'CRUD', 'CRUD', 'CRUD', 'CRUD', '1');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `tipos`
--

CREATE TABLE `tipos` (
  `IdTipo` int(11) NOT NULL,
  `NombreTipo` varchar(100) NOT NULL,
  `DescripcionTipo` varchar(255) NOT NULL,
  `EstadoTipo` varchar(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Volcado de datos para la tabla `tipos`
--

INSERT INTO `tipos` (`IdTipo`, `NombreTipo`, `DescripcionTipo`, `EstadoTipo`) VALUES
(3, 'Libro', 'Encuadernado, Fisico', '1'),
(4, 'prueba', 'Infomativas', '1');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `usuarios`
--

CREATE TABLE `usuarios` (
  `IdUsuario` int(11) NOT NULL,
  `NombreUsuario` varchar(100) NOT NULL,
  `ApellidoUsuario` varchar(100) NOT NULL,
  `TelefonoUsuario` varchar(15) NOT NULL,
  `DireccionUsuario` varchar(255) NOT NULL,
  `CorreoUsuario` varchar(100) NOT NULL,
  `ClaveUsuario` varchar(200) NOT NULL,
  `FechaCreacionUsuario` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  `EstadoUsuario` int(11) NOT NULL DEFAULT 1,
  `IdRol` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Volcado de datos para la tabla `usuarios`
--

INSERT INTO `usuarios` (`IdUsuario`, `NombreUsuario`, `ApellidoUsuario`, `TelefonoUsuario`, `DireccionUsuario`, `CorreoUsuario`, `ClaveUsuario`, `FechaCreacionUsuario`, `EstadoUsuario`, `IdRol`) VALUES
(13, 'Yesid', 'Sanchez', '31114915480', 'verada pozo negro', 'yalejandro.900@gmail.com', '123', '2023-05-15 00:51:13', 1, 2),
(14, 'Andres ', 'Sanchez', '31114915481', 'verada pozo negro', 'Andres002451@gmail.com', '202cb962ac59075b964b07152d234b70', '2023-05-15 04:38:33', 1, 2);

--
-- Índices para tablas volcadas
--

--
-- Indices de la tabla `autores`
--
ALTER TABLE `autores`
  ADD PRIMARY KEY (`IdAutor`);

--
-- Indices de la tabla `categorias`
--
ALTER TABLE `categorias`
  ADD PRIMARY KEY (`IdCategoria`);

--
-- Indices de la tabla `colecciones`
--
ALTER TABLE `colecciones`
  ADD PRIMARY KEY (`IdColeccion`);

--
-- Indices de la tabla `editoriales`
--
ALTER TABLE `editoriales`
  ADD PRIMARY KEY (`IdEditorial`);

--
-- Indices de la tabla `ejemplares`
--
ALTER TABLE `ejemplares`
  ADD PRIMARY KEY (`IdEjemplar`),
  ADD KEY `IdLibro` (`IdLibro`);

--
-- Indices de la tabla `idiomas`
--
ALTER TABLE `idiomas`
  ADD PRIMARY KEY (`IdIdioma`);

--
-- Indices de la tabla `libros`
--
ALTER TABLE `libros`
  ADD PRIMARY KEY (`IdLibro`),
  ADD KEY `IdCategoria` (`IdCategoria`),
  ADD KEY `IdColeccion` (`IdColeccion`),
  ADD KEY `IdEditorial` (`IdEditorial`),
  ADD KEY `IdIdioma` (`IdIdioma`),
  ADD KEY `IdTipo` (`IdTipo`),
  ADD KEY `IdAutor` (`IdAutor`);

--
-- Indices de la tabla `multas`
--
ALTER TABLE `multas`
  ADD PRIMARY KEY (`IdMulta`),
  ADD KEY `IdPrestamo` (`IdPrestamo`);

--
-- Indices de la tabla `prestamos`
--
ALTER TABLE `prestamos`
  ADD PRIMARY KEY (`IdPrestamo`),
  ADD KEY `IdEjemplar` (`IdEjemplar`),
  ADD KEY `IdUsuario` (`IdUsuario`);

--
-- Indices de la tabla `rol`
--
ALTER TABLE `rol`
  ADD PRIMARY KEY (`IdRol`);

--
-- Indices de la tabla `tipos`
--
ALTER TABLE `tipos`
  ADD PRIMARY KEY (`IdTipo`);

--
-- Indices de la tabla `usuarios`
--
ALTER TABLE `usuarios`
  ADD PRIMARY KEY (`IdUsuario`),
  ADD KEY `IdRolUsuario` (`IdRol`);

--
-- AUTO_INCREMENT de las tablas volcadas
--

--
-- AUTO_INCREMENT de la tabla `autores`
--
ALTER TABLE `autores`
  MODIFY `IdAutor` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=14;

--
-- AUTO_INCREMENT de la tabla `categorias`
--
ALTER TABLE `categorias`
  MODIFY `IdCategoria` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=75;

--
-- AUTO_INCREMENT de la tabla `colecciones`
--
ALTER TABLE `colecciones`
  MODIFY `IdColeccion` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;

--
-- AUTO_INCREMENT de la tabla `editoriales`
--
ALTER TABLE `editoriales`
  MODIFY `IdEditorial` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;

--
-- AUTO_INCREMENT de la tabla `ejemplares`
--
ALTER TABLE `ejemplares`
  MODIFY `IdEjemplar` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10;

--
-- AUTO_INCREMENT de la tabla `idiomas`
--
ALTER TABLE `idiomas`
  MODIFY `IdIdioma` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9;

--
-- AUTO_INCREMENT de la tabla `libros`
--
ALTER TABLE `libros`
  MODIFY `IdLibro` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=36;

--
-- AUTO_INCREMENT de la tabla `multas`
--
ALTER TABLE `multas`
  MODIFY `IdMulta` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT de la tabla `prestamos`
--
ALTER TABLE `prestamos`
  MODIFY `IdPrestamo` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT de la tabla `rol`
--
ALTER TABLE `rol`
  MODIFY `IdRol` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

--
-- AUTO_INCREMENT de la tabla `tipos`
--
ALTER TABLE `tipos`
  MODIFY `IdTipo` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

--
-- AUTO_INCREMENT de la tabla `usuarios`
--
ALTER TABLE `usuarios`
  MODIFY `IdUsuario` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=15;

--
-- Restricciones para tablas volcadas
--

--
-- Filtros para la tabla `ejemplares`
--
ALTER TABLE `ejemplares`
  ADD CONSTRAINT `ejemplares_ibfk_1` FOREIGN KEY (`IdLibro`) REFERENCES `libros` (`IdLibro`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Filtros para la tabla `libros`
--
ALTER TABLE `libros`
  ADD CONSTRAINT `libros_ibfk_1` FOREIGN KEY (`IdAutor`) REFERENCES `autores` (`IdAutor`),
  ADD CONSTRAINT `libros_ibfk_2` FOREIGN KEY (`IdCategoria`) REFERENCES `categorias` (`IdCategoria`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `libros_ibfk_3` FOREIGN KEY (`IdColeccion`) REFERENCES `colecciones` (`IdColeccion`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `libros_ibfk_4` FOREIGN KEY (`IdEditorial`) REFERENCES `editoriales` (`IdEditorial`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `libros_ibfk_5` FOREIGN KEY (`IdIdioma`) REFERENCES `idiomas` (`IdIdioma`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `libros_ibfk_6` FOREIGN KEY (`IdTipo`) REFERENCES `tipos` (`IdTipo`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Filtros para la tabla `multas`
--
ALTER TABLE `multas`
  ADD CONSTRAINT `multas_ibfk_1` FOREIGN KEY (`IdPrestamo`) REFERENCES `prestamos` (`IdPrestamo`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Filtros para la tabla `prestamos`
--
ALTER TABLE `prestamos`
  ADD CONSTRAINT `prestamos_ibfk_1` FOREIGN KEY (`IdEjemplar`) REFERENCES `ejemplares` (`IdEjemplar`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `prestamos_ibfk_2` FOREIGN KEY (`IdUsuario`) REFERENCES `usuarios` (`IdUsuario`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Filtros para la tabla `usuarios`
--
ALTER TABLE `usuarios`
  ADD CONSTRAINT `usuarios_ibfk_1` FOREIGN KEY (`IdRol`) REFERENCES `rol` (`IdRol`) ON UPDATE CASCADE;
COMMIT;

