Red de conocimiento informático - Aprendizaje de código fuente - Código del sistema de gestión de bibliotecas de bases de datos

Código del sistema de gestión de bibliotecas de bases de datos

crear base de datos db

usar db

crear información de nivel de préstamo de tabla (

nivel de préstamo int clave primaria,

Tiempo máximo de préstamo int,

Cantidad máxima de préstamo int,

)

insertar en valores de información de nivel de préstamo

(0, 30, 10),

(1, 60, 20),

(2, 90, 30),

(3, 120, 40)

crear información del lector de tabla (

Nombre char(15) no nulo,

Número de identificación char(12) clave primaria,

Préstamo nivel int predeterminado 0,

Libros de préstamo acumulado int predeterminado 0,

clave externa (nivel de préstamo) hace referencia a información del nivel de préstamo (nivel de préstamo)

)

p>

Insertar en los valores de información del lector (nombre, número de identificación, nivel de préstamo)

('Zhang San', '541607120165', 1),?

(' Li Si', '541707010185', 3),

('Wang Wu', '541707120165', 1),

('Zhao Liu', '541505980268', 2),

('Sun Qi', '541407010169', 0),

('Zhou Ba', '541307010489', 1)

crear tabla publicada Empresa información (

Clave principal de la editorial varchar(20),

Dirección varchar(25),

Número de contacto char(7)

)

insertar en valores de información del editor

('Tsinghua University Press', 'Beijing', '4979421'),

('晟Wei Publishing House ', 'Tianjin', '5564130'),

('Nanhai Publishing Company', 'Hainan', '4984910'),

('Editorial de Arte y Literatura de Shanghai ' , 'Shanghai', '6640239')

crear información del libro de tablas (

número de llamada char(15) clave principal,

autor char(15),

Título del libro char(15),

Editorial varchar(20),

Fecha de publicación,

Clave externa (Editor) referencias Información del editor (Editor)

)

insertar valores de información en el libro

('b12987', 'Yan Weimin', 'Estructura de datos', 'Tsinghua University Press', '2012-02-06'),

('b97894', 'Keigo Higashino', 'Magic Night', 'Nanhai Publishing Company', '2004-08 -02'),

('b16546', 'Wu Yuhua', 'Tutorial de experimentos de física', 'Tsinghua University Press', '2013-05-15'),

('b89490', 'Zhang Xuefeng', 'Orientación para el examen de ingreso a posgrado', 'Editorial Shengwei', '2016-12-12'),

('b56400', 'Jia Zongpei', 'Paper' Shang Xun Xian Ji', 'Shanghai Literature and Art Publishing House', '2011-02-05')

crear tabla

e Información del libro único (

Número de código de barras char(7) verificación de clave principal (len(número de código de barras) = ​​7),

Número de llamada char(15),

Ubicación de la colección varchar(40),

Estado del libro y de la publicación varchar(6) check(estado del libro y de la publicación en ('disponible para pedir prestado', 'préstamo', 'no disponible para pedir prestado')) ,

Monto de préstamo histórico int predeterminado 0,

clave externa (número de llamada)información del libro de referencias (número de llamada)

)

insertar en un solo libro Información del libro (número de código de barras, número de clasificación, ubicación de recolección, estado del libro) valores

('t987628', 'b97894', 'Tercer piso A8', 'Préstamos'),

('t594805', 'b97894', 'C7 en el segundo piso', 'se puede tomar prestado'),

('t984910', 'b89490', 'A2 en el quinto piso ', 'prestar'),

('t940566', 'b12987', 'Menos 1er piso D3', 'Préstamo')

crear información de préstamo de tabla (

Número de préstamo char (6) clave principal,

Fecha de préstamo,

Fecha de devolución,

Número de código de barras del libro char(7),

Número de identificación del prestatario char(12),

referencias de clave externa (número de código de barras del libro) información de un solo libro (número de código de barras),

referencias de clave externa (número de identificación del prestatario) información de lectores (número de documento)

)

crear información de comentario de tabla (

número de comentario clave principal char(8),

calificación numérico (2, 1),

Contenido varchar(200),

Fecha de hora del comentario,

ID del comentarista char(12),

Carácter del número de clasificación (15),

clave externa (número de clasificación)información del libro de referencias (número de clasificación),

clave externa (identificación del revisor)información del lector de referencias (número de certificado) )

)

insertar valores de información en el comentario

('p12391', 8.9, 'muy interesante', '2015-06-24', '541707010185 ', 'b97894'),?

('p98523', 7.8, 'Mucho beneficio', '2016-05-22', '541307010489', 'b89490'),

('p94606', 6.8, 'No puedo entender orz en absoluto', '2017-05-02', '541607120165', 'b12987')

crear información de la palabra del asunto de la tabla (

ID char(8) clave primaria,

Categoría char(15),

Número de llamada char(15),

extranjero clave(número de clasificación) información del libro de referencias (número de clasificación)

)

insertar valores de información de encabezado de asunto

('z64400', 'computadora', ' b12987'),

('z95410', 'Física', 'b16546'),

('z98500', 'Examen de acceso a posgrado', 'b89490'),

( 'z641

65', 'Misterio\Suspense', 'b97894'),

('z69850', 'Xianxia', 'b56400')

usa db

ir

crear disparador1

sobre el préstamo de información

después de insertar

como

comenzar

¿Actualizar la información del lector? - ¿Cambiar el número acumulado de libros prestados por los lectores

establecer libros prestados acumulativos = libros prestados acumulativos + 1?

de la información del lector, insertada

donde información del lector.Número de identificación= insertado.Número de identificación del prestatario

¿actualizar la información del libro único?--Cambiar el estado del libro

establecer información del libro único.Estado del libro= ' Préstamo'

desde información de un solo libro insertada

donde se inserta.número de código de barras del libro = información de un solo libro.número de código de barras

actualizar información de un solo libro

establecer monto de préstamo histórico = monto de préstamo histórico + 1?--Cambiar monto de préstamo histórico del libro

a partir de la información del libro único insertado

donde se inserta el número de código de barras del libro = único. información del libro.Número de código de barras

end

insertar en valores de información de préstamo

('j13488', '2018-05-01' , '2018-08- 01', 't987628', '541407010169')

insertar en valores de información de préstamo

('j14910', '2016-12-11', ' 2017-01-25' , 't984910', '541607120165')

insertar en valores de información de préstamo

('j97890', '2018-05-14', '2018- 06-14', ' t940566', '541607120165')

ir

crear vista vista_1 (código de barras del libro, nombre del prestatario, número, tiempo de préstamo, tiempo de devolución vencido)

como

seleccione el número de código de barras del libro, el nombre, el número de identificación, el tiempo de préstamo, el tiempo de devolución

de la información del préstamo, la información del lector

donde el número de identificación del prestatario = Lector. información número de identificación y hora de devolución> getdate()

go

crear vista view_2 (código de barras del libro, monto total del préstamo histórico)

como

.

seleccione el número de código de barras, importe histórico del préstamo

de la información del libro único, información del libro

donde información del libro único. Número de clasificación = Información del libro Número de clasificación y título del libro = 'Magic'. Night'

ir

crear vista view_3 (categoría, código de barras del libro, monto total de préstamo histórico)

como

seleccionar categoría, código de barras número, monto de préstamo histórico

de información de un solo libro, información de libro, información de encabezado de materia

donde información de encabezado de materia. Número de llamada = Información del libro. Número de llamada e información del libro. Número de llamada = Información de un solo libro. Llamar

Número de libro y categoría = 'Examen de ingreso de posgrado'

ir

crear vista vista_4 (número de lector, código de barras, título del libro, fecha de entrega)

como

seleccione el número de identificación del prestatario, el número de código de barras del libro, el título del libro, el tiempo de devolución

de la información de un solo libro, la información del libro, la información del préstamo

donde está la información del préstamo.número de código de barras del libro = número de código de barras único e información de libro único = número de clasificación del libro

y hora de devolución> getdate() y número de identificación del prestatario = '541607120165'

go.

cree la vista view_5 (número de lector, código de barras del libro, nombre del libro, fecha de préstamo, fecha de devolución)

como

seleccione el número de identificación del prestatario, el número de código de barras del libro, título del libro, tiempo de préstamo, tiempo de devolución

de información de un solo libro, información de un libro, información de un préstamo

donde información de un solo libro = número de código de barras e información de un solo libro. Número de clasificación = información del libro

y número de identificación del prestatario = '541607120165'

ir

crear vista view_6 (Número de lector, título del libro, reseña). tiempo, contenido de revisión)

como

seleccionar ID del revisor, título del libro, tiempo de revisión, contenido

de información de préstamo, información de un solo libro, información de revisión, libro información

donde información de préstamo.número de código de barras del libro = información de un solo libro.número de código de barras e información de un solo libro.número de llamada = información de revisión.número de llamada

y número de llamada de revisión = libro. información número de llamada e identificación del revisor = '541607120165'

ir

crear vista vista_7 (nombre de la publicación, nombre del libro, hora de publicación)

como

seleccione el 100 por ciento superior Información del editor Editorial, título del libro, hora de publicación

de Información del editor, información del libro

p>

donde información del editor. Editor = libro. información.Editor

ordenar por hora de publicación asc

--ejecución

seleccione * de la vista_1

seleccione * de la vista_2

seleccione * de la vista_3

seleccione * de la vista_4

seleccione * de la vista_5

seleccione * de la vista_6

seleccione * desde view_7 ordenar por fecha de publicación asc

Información ampliada:

Modelo de base de datos:

Modelo de objetos

Modelo jerárquico (protocolo ligero de acceso a datos )

Modelo de red (gran almacenamiento de datos)

Modelo relacional

Modelo de objetos orientado

Modelo semiestructurado

Modelo plano (modelo tabular, generalmente en forma de matriz bidimensional). Como datos del modelo de tabla Excel)

Arquitectura

La arquitectura de la base de datos se puede dividir aproximadamente en tres niveles generales: capa interna, capa conceptual y capa externa.

Capa interna: la más cercana al cuerpo de almacenamiento real, es decir, el método de almacenamiento real de los datos relevantes.

Capa exterior: la más cercana al usuario, es decir, sobre cómo los usuarios individuales ven los datos.

Capa conceptual: la capa indirecta entre ambas.

Índice de base de datos

Artículo principal: Índice de base de datos

El concepto de índice de datos existe desde hace mucho tiempo. Por ejemplo, existe una tabla de contenidos. en las primeras páginas de un libro, y el índice también es un tipo de índice, pero tiene una amplia gama de categorías, como matrículas, números de identificación, códigos de barras, etc., que son todos números de índice. Cuando vemos el número, podemos ver las pistas del número. Si estamos buscando, la persona, el automóvil o el artículo correcto se pueden encontrar rápidamente simplemente proporcionando el número correspondiente.

Además, el índice tiene una relación correspondiente con el campo. El índice se deriva del campo. El campo tiene el llamado campo clave (Este campo es único). su valor no se puede repetir y no puede ser "nulo".

Por ejemplo: al fusionar datos, el índice desempeña el papel de propósito direccional para el cual se agregarán los datos del campo. Por tanto, el índice no es repetible y no puede estar vacío.

Operación de base de datos: transacción

Entrada principal: transacción de base de datos

Una transacción es una secuencia de operaciones de base de datos definidas por el usuario. Estas operaciones se realizan en su totalidad. o No hacer nada en absoluto es una unidad de trabajo integral. ?

La concurrencia de transacciones se refiere a las operaciones paralelas de múltiples transacciones que se turnan para ejecutarse entre sí. La concurrencia de transacciones puede acceder y almacenar datos incorrectos, destruyendo el aislamiento de las transacciones y la coherencia de la base de datos.

Estructura de datos del modelo de datos de red Modelo de red La colección de conexiones jerárquicas básicas que cumplen las dos condiciones siguientes es un modelo de red. 1. Permitir que más de un nodo no tenga padres; 2. Un nodo puede tener más de un padre. ?

Enciclopedia Baidu - Base de datos