Está en la página 1de 12

INSTITUTO SUPERIOR TECNOLÓGICO CIBERTEC

Implementación de una base


de datos para el
almacenamiento de mateerial
de lectura para la biblioteca
Docente: Lopez Lopez, Jaime
Integrantes:
- Aycachi Galvan, Marco Antonio
- Ramirez Ramirez, Yelitza
Beatriz
- Cubas Ulpiano, Yerson
TABLE OF CONTENTS

01 Descripción general

02 Flujograma del proceso (BPMN)

03
Diagrama Entidad-relación inicial

04
Normalización y base de datos
DESCRIPCIÓN GENERAL

NOMBRE
Biblioteca “Rincón del Lector”

GIRO Y UBICACIÓN
La Biblioteca “Rincón del Lector” realiza préstamo
de material bibliográfico de diversas temáticas al
público en general. La empresa se encuentra ubicada
en la Av. Joaquin Madrid N° 201 - San Borja en el
distrito y provincia de Lima Metropolitana.

Área o Actividad a Implementar


Implementación de una base de datos de
almacenamiento de material bibliotecario.
DESCRIPCION DEL CASO

Biblioteca “Rincón del Lector” es una empresa


dedica al rubro de préstamo de material
bibliográfico al público en general.
RINCON El guardián de la empresa abre a las 6:00 am y
verifica que no haya ninguna eventualidad.
LECTOR Luego el personal de limpieza llega a
las7:00 am para limpiar las instalaciones.
Posteriormente a las 8:00 am la
bibliotecaria verifica que el material
bibliográfico este completo.
La atención hacia los usuarios es de 9am hasta
las 4:30pm, siendo de forma presencial o
de forma virtual.
FLUJOGRAMA DEL PROCESO
1FN
PRESTAMO (CODPREST, CODUSU, NOMUSU, APELLUSU, NCARNET,
CATEGORIA, FECHASALIDA, HORASALIDA, FECHAENTREGA,
HORAENTREGA)
DETALLEPRESTAMO (CODDETPREST, CODLIBRO, NOMBRE,
CODEDICION, ISBN)
2FN
PRESTAMO (CODPREST, CODUSU, NOMUSU, APELLUSU, NCARNET,
CATEGORIA, FECHASALIDA, HORASALIDA, FECHAENTREGA,
HORAENTREGA)
DETALLEPRESTAMO (CODDETPREST, CODLIBRO)
LIBRO (CODLIBRO, NOMBRE)

NORMALIZACION EDICION (CODEDICION, CODLIBRO, ISBN)


3FN
PRESTAMO (CODPREST, CODUSU, FECHASALIDA, HORASALIDA,
FECHAENTREGA, HORAENTREGA
USUARIO (CODUSU, NOMUSU, APELLUSU, CODCARNET)
CARNET (CODCARNET, NUMERO)
CATEGORIA_CARNET (CODCATEGORIA, DESCRIPCION)
DETALLEPRESTAMO (CODDETPREST, CODLIBRO)
LIBRO (CODLIBRO, NOMBRE)
EDICION (CODEDICION, CODLIBRO, ISBN)

6
DIAGRAMA ENTIDAD –RELACION INICIAL
PASOS

2 3
1 Realizar la
Insertar datos en
las tablas creadas 4
creación de las
tablas
Realizar la
creación de la Realizar las
base de datos consultas, vistas
o subconsultas
CREATE DATABASE BD_BIBLIOTECA
ON PRIMARY (NAME='BD_BIBLIOTECA_PRI',
FILENAME='C:\Cibertec\proyecto\BD_BIBLIOTECA .MDF',
SIZE=12MB,
MAXSIZE=800MB,
FILEGROWTH=10MB)

LOG ON (NAME='BD_BIBLIOTECA_TRA',
FILENAME='C:\Cibertec\proyecto\BD_BIBLIOTECA.LDF',
SIZE=8MB,
CREACIÓN DE BASE
MAXSIZE=100MB,
FILEGROWTH=10MB)
GO

ALTER DATABASE BD_BIBLIOTECA


ADD FILE (NAME='BD_BDBIBLIOTECA_SEC1',
FILENAME='C:\Cibertec\proyecto\BD_BIBLIOTECA_SEC1.NDF',
SIZE=8MB,
MAXSIZE=400MB,
FILEGROWTH=10%)

9
CREACIÓN DE TABLAS
CREATE TABLE LIBRO(
CODLIBRO CHAR(7) PRIMARY KEY CHECK(CODLIBRO LIKE 'L[0-9][0-9][0-9][0-9][0-9][0-9]'),
TITULO VARCHAR(MAX) NOT NULL,
AÑO DATE,
CODIDIOMA CHAR(3) NOT NULL REFERENCES IDIOMA,
CODTEMATICA CHAR(4) NOT NULL REFERENCES TEMATICA,
CODEDITORIAL CHAR(6) NOT NULL REFERENCES EDITORIAL,
RESTRINCCION CHAR(2) CHECK(RESTRINCCION IN('si','no')),
PAGINAS INT DEFAULT 0,
CANTIDAD TINYINT NOT NULL,
FRAGMENTO CHAR(2) CHECK(FRAGMENTO IN('si','no')),
RECOMENDADOS CHAR(2) CHECK(RECOMENDADOS IN('si','no')),
CODFORMATO CHAR(4) NOT NULL REFERENCES FORMATO,
CODPAIS CHAR(4) NOT NULL REFERENCES PAIS,
ESTADO CHAR(1) CHECK(ESTADO IN('D','N')),
ISBN CHAR(13) NOT NULL UNIQUE,)
CREATE PROC #SP_BUSCAR_X_IDIOMA_DISPONIBILIDAD(@NOMBRE
CONSULTAS CREATE PROC #SP_BUSCAR_X_PAISES(@NOMBRE VARCHAR(80))ASBEGIN
IF EXISTS(SELECT CODPAIS FROM PAIS
VARCHAR(30),@ESTADO CHAR(1))ASBEGIN IF EXISTS(SELECT WHERE NOMPAIS LIKE @NOMBRE+'%' ) BEGIN
CODIDIOMA FROM IDIOMA WHERE NOMIDIOMA LIKE @NOMBRE+'%' ) SELECT (SELECT NOMAUTOR FROM AUTOR
BEGIN WHERE CODAUTOR = AU.CODAUTOR) AS 'AUTOR',
SELECT (SELECT NOMAUTOR FROM AUTOR WHERE (SELECT TITULO FROM LIBRO WHERE
CODAUTOR = AU.CODAUTOR) AS 'AUTOR', CODLIBRO = AU.CODLIBRO) AS 'TITULO',
(SELECT TITULO FROM (SELECT (SELECT
LIBRO WHERE CODLIBRO = AU.CODLIBRO) AS 'TITULO', T.NOMTEMATICA FROM TEMATICA T WHERE T.CODTEMATICA =
L.CODTEMATICA) FROM LIBRO L WHERE CODLIBRO = AU.CODLIBRO)
(SELECT (SELECT T.NOMTEMATICA FROM AS 'TEMATICA’,
TEMATICA T WHERE T.CODTEMATICA = L.CODTEMATICA) FROM LIBRO L
WHERE CODLIBRO = AU.CODLIBRO) AS 'TEMATICA',
(SELECT AÑO FROM LIBRO WHERE CODLIBRO = AU.CODLIBRO) AS
(SELECT AÑO FROM LIBRO WHERE CODLIBRO = 'AÑO',
AU.CODLIBRO) AS 'AÑO', (SELECT (SELECT P.NOMPAIS FROM PAIS P
(SELECT (SELECT WHERE P.CODPAIS = L.CODPAIS) FROM LIBRO L WHERE CODLIBRO =
P.NOMPAIS FROM PAIS P WHERE P.CODPAIS = L.CODPAIS) FROM LIBRO AU.CODLIBRO) AS 'PAIS',
L WHERE CODLIBRO = AU.CODLIBRO) AS 'PAIS', (SELECT (SELECT
I.NOMIDIOMA FROM IDIOMA I WHERE I.CODIDIOMA = L.CODIDIOMA)
(SELECT (SELECT I.NOMIDIOMA FROM IDIOMA I FROM LIBRO L WHERE CODLIBRO = AU.CODLIBRO) AS 'IDIOMA',
WHERE I.CODIDIOMA = L.CODIDIOMA) FROM LIBRO L WHERE CODLIBRO =
AU.CODLIBRO) AS 'IDIOMA', (SELECT (SELECT E.NOMEDITORIAL FROM
(SELECT (SELECT EDITORIAL E WHERE E.CODEDITORIAL = L.CODEDITORIAL) FROM
E.NOMEDITORIAL FROM EDITORIAL E WHERE E.CODEDITORIAL = LIBRO L WHERE CODLIBRO = AU.CODLIBRO) AS 'EDITORIAL',
L.CODEDITORIAL) FROM LIBRO L WHERE CODLIBRO = AU.CODLIBRO) AS
'EDITORIAL', (SELECT RESTRINCCION FROM LIBRO WHERE
(SELECT RESTRINCCION FROM LIBRO WHERE CODLIBRO = AU.CODLIBRO) AS 'RESTRINCCION',
CODLIBRO = AU.CODLIBRO) AS 'RESTRINCCION',
(SELECT (SELECT F.NOMFORMATO FROM
(SELECT (SELECT F.NOMFORMATO FROM FORMATO FORMATO F WHERE F.CODFORMATO = L.CODFORMATO) FROM LIBRO L
F WHERE F.CODFORMATO = L.CODFORMATO) FROM LIBRO L WHERE WHERE CODLIBRO = AU.CODLIBRO) AS 'FORMATO',
CODLIBRO = AU.CODLIBRO) AS 'FORMATO',
(SELECT ESTADO FROM (SELECT ESTADO FROM LIBRO WHERE
LIBRO WHERE CODLIBRO = AU.CODLIBRO) AS 'ESTADO' CODLIBRO = AU.CODLIBRO) AS 'ESTADO'
FROM AUTOR_LIBRO AU FROM AUTOR_LIBRO AU
WHERE AU.CODLIBRO IN (SELECT CODLIBRO FROM WHERE AU.CODLIBRO IN (SELECT CODLIBRO
LIBRO WHERE CODIDIOMA IN (SELECT CODIDIOMA FROM IDIOMA WHERE FROM LIBRO WHERE CODPAIS IN (SELECT CODPAIS FROM PAIS
NOMIDIOMA LIKE @NOMBRE+'%') AND ESTADO IN(@ESTADO) ) WHERE NOMPAIS LIKE @NOMBRE+'%’))

END END

END END

EXEC #SP_BUSCAR_X_IDIOMA_DISPONIBILIDAD 'portugues','D' EXEC #SP_BUSCAR_X_PAISES 'Italia'


Muchas
gracias

También podría gustarte