Introducción
Ahora veremos lo que es un
diccionario de datos, un diccionario de datos es una herramienta que nos sirve
para “explicar” las tablas de nuestras bases de datos.
¿Cómo hago un diccionario de
datos? No tiene mucha ciencia, ponemos el nombre de la tabla, si el nombre no
es mnemónico, damos una breve descripción de la tabla (¿Qué entidad representa?
¿Qué hace esta entidad?); posteriormente ponemos el nombre de cada uno de los
campos de nuestra tabla, el tipo de datos, si puede ser nulo o si es clave
primaria o foránea, y finalmente una descripción del campo.
Desarrollo
Como ejemplo les mostraré los
diccionarios de datos de los ejercicios sobre los que hemos estado trabajando
(he hecho algunas correcciones).
Ejercicio 1:
·
Tabla Coche:
Campo
|
Tipo de datos
|
|
Descripción
|
Accidentes
|
Int(10)
|
No nulo
|
Número de accidentes que ha tenido el coche
|
IDcliente
|
Int(10)
|
No nulo, clave foránea
|
ID del cliente al cual pertenece el coche
|
·
Tabla Cliente:
Campo
|
Tipo de datos
|
|
Descripción
|
IDcliente
|
Int(10)
|
Clave primaria
|
Clave que identifica a cada cliente
|
Ejercicio 2:
·
Tabla Cliente:
Campo
|
Tipo de datos
|
|
Descripción
|
DNIcliente
|
Varchar(20)
|
Clave primaria
|
DNI del cliente, el cual lo identifica
|
Nombre
|
Varchar(20)
|
No nulo
|
Nombre del cliente
|
APaterno
|
Varchar(20)
|
No nulo
|
Apellido paterno del cliente
|
AMaterno
|
Varchar(20)
|
No nulo
|
Apellido materno del cliente
|
IDdireccion
|
Int(10)
|
No nulo, clave foránea
|
ID de la dirección del cliente
|
Telefono
|
Int(8)
|
No nulo
|
Teléfono del cliente
|
·
Tabla Coche:
Campo
|
Tipo de datos
|
|
Descripción
|
Matricula
|
Varchar(10)
|
Clave primaria
|
Matrícula del coche, que lo identifica
|
Modelo
|
Char(20)
|
No nulo
|
Modelo del coche
|
Marca
|
Char(20)
|
No nulo
|
Marca del coche
|
Color
|
Char(20)
|
No nulo
|
Color del coche
|
·
Tabla Compra:
Campo
|
Tipo de datos
|
|
Descripción
|
DNIcliente
|
Varchar(20)
|
No nulo, clave foránea, clave primaria
|
DNI del cliente que compra el coche
|
Matricula
|
Varchar(20)
|
No nulo, clave foránea, clave primaria
|
Matrícula del coche que compra el cliente
|
·
Tabla Dirección: domicilio del cliente
Campo
|
Tipo de datos
|
|
Descripción
|
IDdireccion
|
Int(10)
|
Clave primaria
|
ID de la dirección, que la identifica
|
Calle
|
Varchar(20)
|
No nulo
|
Calle de la dirección
|
Numint
|
Int(5)
|
No nulo
|
Numero interior de la dirección
|
Numext
|
Int(5)
|
No nulo
|
Numero exterior de la dirección
|
·
Tabla Mecánico:
Campo
|
Tipo de datos
|
|
Descripción
|
DNImecanico
|
Varchar(20)
|
Clave primaria
|
DNI del mecánico, que lo identifica
|
Nombre
|
Char(20)
|
No nulo
|
Nombre del mecánico
|
Salario
|
Char(20)
|
No nulo
|
Salario del mecánico
|
APaterno
|
Char(10)
|
No nulo
|
Apellido paterno del mecánico
|
AMaterno
|
Char(10)
|
No nulo
|
Apellido materno del mecánico
|
Contratación
|
Date (fecha)
|
No nulo
|
Fecha de contratación del mecánico
|
·
Tabla Nuevo: coche nuevo
Campo
|
Tipo de datos
|
|
Descripción
|
Unidades
|
Int(20)
|
No nulo
|
Número de unidades de ese coche con que se cuenta
|
·
Tabla Usado: coche usado
Campo
|
Tipo de datos
|
|
Descripción
|
Km
|
Int(20)
|
No nulo
|
Número de kilómetros recorridos por el coche
|
·
Tabla Repara:
Campo
|
Tipo de datos
|
|
Descripción
|
Matricula
|
Varchar(10)
|
No nulo, clave foránea, clave primaria
|
Matrícula del coche que se repara
|
DNImecanico
|
Varchar(20)
|
No nulo, clave foránea, clave primaria
|
DNI del mecánico que repara el coche
|
Fecha
|
Date (fecha)
|
No nulo
|
Fecha en que se repara el coche
|
Horas
|
Int(2)
|
No nulo
|
Número de horas que duró la reparación
|
Ejercicio 3:
·
Tabla Jugador:
Campo
|
Tipo de datos
|
|
Descripción
|
Estadísticas
|
Char(30)
|
No nulo
|
Estadísticas del jugador
|
RUT
|
Varchar(20)
|
Clave primaria
|
RUT del jugador, que lo identifica
|
·
Tabla Partido:
Campo
|
Tipo de datos
|
|
Descripción
|
ID_partido
|
Int(10)
|
Clave primaria
|
ID que identifica al partido
|
·
Tabla Juega:
Campo
|
Tipo de datos
|
|
Descripción
|
ID_partido
|
Int(10)
|
No nulo, clave foránea, clave primaria
|
ID del partido que se juega
|
RUT
|
Varchar(20)
|
No nulo, clave foránea, clave primaria
|
RUT del jugador que juega en el partido
|
Resultado
|
Char(10)
|
No nulo
|
Resultado del partido
|
Ejercicio 4:
·
Tabla Artículo:
Campo
|
Tipo de datos
|
|
Descripción
|
numeroArticulo
|
Int(20)
|
Clave primaria
|
Número del artículo, que lo identifica
|
Descripción
|
Char(30)
|
No nulo
|
Descripción del artículo
|
Existencias
|
Int(20)
|
No nulo
|
Existencias del artículo
|
·
Tabla Cliente:
Campo
|
Tipo de datos
|
|
Descripción
|
numeroCliente
|
Int(20)
|
Clave primaria
|
Número del cliente, que lo identifica
|
Calle
|
Char(20)
|
No nulo
|
Calle donde vive el cliente
|
numeroCasa
|
Int(20)
|
No nulo
|
Número de la casa del cliente
|
Saldo
|
Int(20)
|
No nulo
|
Saldo del cliente
|
limiteCredito
|
Int(20)
|
No nulo
|
Límite de crédito que tiene el cliente
|
Descuento
|
Int(20)
|
No nulo
|
Descuento que tiene el cliente
|
·
Tabla Fábrica:
Campo
|
Tipo de datos
|
|
Descripción
|
numeroFabrica
|
Int(20)
|
Clave primaria
|
Número de la fábrica, que la identifica
|
Teléfono
|
Int(8)
|
No nulo
|
Teléfono de la fábrica
|
·
Tabla Pedido:
Campo
|
Tipo de datos
|
|
Descripción
|
ID_pedido
|
Int(20)
|
Clave primaria
|
Identificador del pedido
|
numeroCliente
|
Int(20)
|
No nulo, clave foránea
|
Número del cliente que hace el pedido
|
numeroArticulo
|
Int(20)
|
No nulo, clave foránea
|
Número del artículo del que se hace el pedido
|
Calle
|
Char(20)
|
No nulo
|
Calle donde vive el cliente
|
numeroCasa
|
Int(20)
|
No nulo
|
Número donde vive el cliente
|
Fecha
|
Date (fecha)
|
No nulo
|
Fecha en que se hace el pedido
|
cantidadArts
|
Int(20)
|
No nulo
|
Cantidad de artículos que se ordenan
|
·
Tabla Produce:
Campo
|
Tipo de datos
|
|
Descripción
|
numeroFabrica
|
Int(20)
|
No nulo, clave foránea, clave primaria
|
Número que identifica a la fábrica
|
numeroArticulo
|
Int(20)
|
No nulo, clave foránea, clave primaria
|
Número que identifica al artículo
|
numArts
|
Int(20)
|
No nulo
|
Número de artículos que se producen
|
Ejercicio 5:
·
Tabla Categoría:
Campo
|
Tipo de datos
|
|
Descripción
|
IDcategoria
|
Int(20)
|
Clave primaria
|
Identificador de la categoría
|
Descripción
|
Char(30)
|
No nulo
|
Descripción de la categoría
|
Nombre
|
Char(20)
|
No nulo
|
Nombre de la categoría
|
·
Tabla Cliente:
Campo
|
Tipo de datos
|
|
Descripción
|
RUTcliente
|
Varchar(20)
|
Clave primaria
|
RUT que identifica a cada cliente
|
nombreCliente
|
Varchar(20)
|
No nulo
|
Nombre del cliente
|
IDdireccion
|
Int(20)
|
No nulo, clave foránea
|
Identificador de la dirección del cliente
|
Teléfono
|
Int(8)
|
No nulo
|
Teléfono del cliente
|
·
Tabla Compra:
Campo
|
Tipo de datos
|
|
Descripción
|
ID_compra
|
Int(20)
|
Clave primaria
|
Identificador de la compra
|
RUTcliente
|
Varchar(20)
|
No nulo
|
RUT del cliente que hace la compra
|
IDproducto
|
Int(20)
|
No nulo
|
Identificador del producto que se compra
|
Descuento
|
Int(20)
|
No nulo
|
Descuento de la compra
|
Cantidad
|
Int(20)
|
No nulo
|
Cantidad de productos que se compran
|
Fecha
|
Date (fecha)
|
No nulo
|
Fecha de la compra
|
·
Tabla Dirección:
Campo
|
Tipo de datos
|
|
Descripción
|
IDdireccion
|
Int(20)
|
Clave primaria
|
Identificador de la dirección
|
Calle
|
Char(20)
|
No nulo
|
Calle de la dirección
|
Numero
|
Int(20)
|
No nulo
|
Número de la dirección
|
·
Tabla Producto:
Campo
|
Tipo de datos
|
|
Descripción
|
IDproducto
|
Int(20)
|
Clave primaria
|
Identificador del producto
|
Stock
|
Int(20)
|
No nulo
|
Cantidad de productos en stock
|
Nombre
|
Char(20)
|
No nulo
|
Nombre del producto
|
Precio
|
Int(20)
|
No nulo
|
Precio del producto
|
IDcategoria
|
Int(20)
|
No nulo
|
Identificador de la categoría del producto
|
RUTproveedor
|
Varchar(20)
|
No nulo, clave foránea
|
RUT del proveedor del producto
|
·
Tabla Proveedor:
Campo
|
Tipo de datos
|
|
Descripción
|
RUTproveedor
|
Varchar(20)
|
Clave primaria
|
RUT del proveedor, que lo identifica
|
IDdireccion
|
Int(20)
|
No nulo, clave foránea
|
Identificador de la dirección del proveedor
|
Paginaweb
|
Varchar(50)
|
No nulo
|
Clave primaria del proveedor
|
Teléfono
|
Int(8)
|
No nulo
|
Teléfono del proveedor
|
Nombre
|
Char(20)
|
No nulo
|
Nombre del proveedor
|
Ejercicio 6:
·
Tabla Aeropuerto:
Campo
|
Tipo de datos
|
|
Descripción
|
codigoAeropuerto
|
Int(20)
|
Clave primaria
|
Código identificador del aeropuerto
|
Nombre
|
Char(20)
|
No nulo
|
Nombre del aeropuerto
|
Ciudad
|
Char(20)
|
No nulo
|
Ciudad del aeropuerto
|
País
|
Char(20)
|
No nulo
|
País del aeropuerto
|
·
Tabla Avión:
Campo
|
Tipo de datos
|
|
Descripción
|
IDavion
|
Int(20)
|
Clave primaria
|
Identificador del avión
|
Modelo
|
Char(20)
|
No nulo
|
Modelo del avión
|
Plazas
|
Int(20)
|
No nulo
|
Plazas del avión
|
·
Tabla Programa: Programa de vuelo
Campo
|
Tipo de datos
|
|
Descripción
|
numeroVuelo
|
Int(20)
|
No nulo, clave foránea, clave primaria
|
Número del vuelo
|
codigoAeropuerto
|
Int(20)
|
No nulo, calve foránea, clave primaria
|
Código del aeropuerto
|
Días
|
Int(20)
|
No nulo
|
Días del programa de vuelo
|
lineaAerea
|
Char(20)
|
No nulo
|
Línea aérea del programa de vuelo
|
·
Tabla Vuelo:
Campo
|
Tipo de datos
|
|
Descripción
|
numeroVuelo
|
Int(20)
|
Clave primaria
|
Número del vuelo
|
Fecha
|
Date (fecha)
|
No nulo
|
Fecha del vuelo
|
Escalas
|
Char(20)
|
No nulo
|
Escalas del vuelo
|
Plazas
|
Int(20)
|
No nulo
|
Plazas del vuelo
|
IDavion
|
Int(20)
|
No nulo
|
Identificador del avión que hará el vuelo
|
Ejercicio 7:
·
Tabla Áreas:
Campo
|
Tipo de datos
|
|
Descripción
|
IDarea
|
Int(20)
|
Clave primaria
|
Identificador del área
|
Localización
|
Char(20)
|
No nulo
|
Localización del área
|
Deporte
|
Char(20)
|
No nulo
|
Deporte del área
|
IDcomplejo
|
Int(20)
|
No nulo, clave foránea
|
Identificador del complejo del área
|
·
Tabla Complejo:
Campo
|
Tipo de datos
|
|
Descripción
|
IDcomplejo
|
Int(20)
|
Clave primaria
|
Identificador del complejo
|
Localización
|
Char(30)
|
No nulo
|
Localización del complejo
|
areaOcupada
|
Char(30)
|
No nulo
|
Área ocupada del complejo
|
Jefe
|
Char(20)
|
No nulo
|
Jefe del complejo
|
IDsede
|
Int(20)
|
No nulo, clave foránea
|
Identificador de la sede del complejo
|
·
Tabla Evento:
Campo
|
Tipo de datos
|
|
Descripción
|
IDevento
|
Int(20)
|
Clave primaria
|
Identificador del evento
|
IDcomplejo
|
Int(20)
|
No nulo, clave foránea
|
Identificador del complejo del evento
|
Fecha
|
Date (fecha)
|
No nulo
|
Fecha del evento
|
Duración
|
Int(20)
|
No nulo
|
Duración del evento
|
Comisarios
|
Char(50)
|
No nulo
|
Comisarios del evento
|
Equipamento
|
Char(20)
|
No nulo
|
Equipamento para el evento
|
numParticipantes
|
Int(30)
|
No nulo
|
Número de participantes en el evento
|
numComisarios
|
Int(30)
|
No nulo
|
Número de comisarios en el evento
|
·
Tabla Sede:
Campo
|
Tipo de datos
|
|
Descripción
|
IDsede
|
Int(20)
|
Clave primaria
|
Identificador de la sede
|
numComplejos
|
Int(20)
|
No nulo
|
Número de complejos que tiene la sede
|
Presupuesto
|
Int(20)
|
No nulo
|
Presupuesto que tiene la sede
|
Ejercicio 8:
·
Tabla Encuentro:
Campo
|
Tipo de datos
|
|
Descripción
|
Composición
|
Char(20)
|
No nulo
|
Composición del encuentro
|
Resultado
|
Char(20)
|
No nulo
|
Resultado del encuentro
|
IDencuentro
|
Int(20)
|
Clave primaria
|
Identificador del encuentro
|
IDtorneo
|
Int(20)
|
No nulo, clave foránea
|
Identificador del torneo del encuentro
|
·
Tabla Entrena:
Campo
|
Tipo de datos
|
|
Descripción
|
Fecha
|
Date (fecha)
|
No nulo
|
Fecha en que se entrena
|
IDentrenador
|
Int(20)
|
No nulo, clave foránea, clave primaria
|
Identificador del entrenador
|
IDjugador
|
Int(20)
|
No nulo, clave foránea, clave primaria
|
Identificador del jugador
|
·
Tabla Entrenador:
Campo
|
Tipo de datos
|
|
Descripción
|
IDentrenador
|
Int(20)
|
Clave primaria
|
Identificador del entrenador
|
Nombre
|
Char(20)
|
No nulo
|
Nombre del entrenador
|
·
Tabla Jugador:
Campo
|
Tipo de datos
|
|
Descripción
|
IDjugador
|
Int(20)
|
Clave primaria
|
Identificador del jugador
|
IDtorneo
|
Int(20)
|
No nulo, clave foránea
|
Identificador del torneo
|
Nacionalidad
|
Char(20)
|
No nulo
|
Nacionalidad del jugador
|
Ganancias
|
Int(20)
|
No nulo
|
Ganancias del jugador
|
Nombre
|
Char(20)
|
No nulo
|
Nombre del jugador
|
·
Tabla Torneo:
Campo
|
Tipo de datos
|
|
Descripción
|
IDtorneo
|
Int(20)
|
Clave primaria
|
Identificador del torneo
|
Fecha
|
Date (fecha)
|
No nulo
|
Fecha del torneo
|
País
|
Char(20)
|
No nulo
|
País del torneo
|
Lugar
|
Char(20)
|
No nulo
|
Lugar del torneo
|
Modalidad
|
Char(20)
|
No nulo
|
Modalidad del torneo
|
Ejercicio 9:
·
Tabla Actor:
Campo
|
Tipo de datos
|
|
Descripción
|
Películas
|
Int(20)
|
No nulo
|
Número de películas en las que ha actuado
|
·
Tabla Cine:
Campo
|
Tipo de datos
|
|
Descripción
|
IDcine
|
Int(20)
|
Clave primaria
|
Identificador del cine
|
Cartelera
|
Char(100)
|
No nulo
|
Cartelera del cine
|
Teléfono
|
Int(8)
|
No nulo
|
Teléfono del cine
|
IDdireccion
|
Int(20)
|
No nulo, clave foránea
|
Identificador de la dirección del cine
|
Nombre
|
Char(20)
|
No nulo
|
Nombre del cine
|
·
Tabla Dirección:
Campo
|
Tipo de datos
|
|
Descripción
|
IDdireccion
|
Int(20)
|
Clave primaria
|
Identificador de la dirección
|
Calle
|
Char(20)
|
No nulo
|
Calle de la dirección
|
Numero
|
Int(20)
|
No nulo
|
Número de la dirección
|
·
Tabla Director:
Campo
|
Tipo de datos
|
|
Descripción
|
Películas
|
Int(20)
|
No nulo
|
Películas que ha dirigido
|
·
Tabla Opinión:
Campo
|
Tipo de datos
|
|
Descripción
|
Numero
|
Int(20)
|
Clave primaria
|
Número que identifica a la opinión
|
IDpelicula
|
Int(20)
|
No nulo, clave foránea
|
Identificador de la película
|
Fecha
|
Date (fecha)
|
No nulo
|
Fecha de la opinión
|
Comentario
|
Char(20)
|
-
|
Comentario sobre la película
|
Calificación
|
Int(2)
|
No nulo
|
Calificación de la opinió
|
edadPersona
|
Int(3)
|
No nulo
|
Edad de la persona que opina
|
nombrePersona
|
Char(30)
|
No nulo
|
Nombre de la persona que opina
|
·
Tabla Participantes:
Campo
|
Tipo de datos
|
|
Descripción
|
Nombre
|
Char(20)
|
Clave primaria
|
Nombre que identifica al participante
|
IDpelicula
|
Int(20)
|
Clave foránea
|
Identificador de la película en que participa
|
Nacionalidad
|
Char(20)
|
No nulo
|
Nacionalidad del participante
|
·
Tabla Película:
Campo
|
Tipo de datos
|
|
Descripción
|
IDpelicula
|
Int(20)
|
Clave primaria
|
Identificador de la película
|
Resumen
|
Char(20)
|
No nulo
|
Resumen de la película
|
Calificación
|
Int(2)
|
No nulo
|
Calificación de la película
|
Duración
|
Int(4)
|
No nulo
|
Duración de la película
|
URL
|
Varchar(50)
|
No nulo
|
URL de la película
|
Año
|
Int(4)
|
No nulo
|
Año de la película
|
País
|
Char(20)
|
No nulo
|
País de la película
|
Subtitulos
|
Char(2)
|
No nulo
|
Si la película tiene subtítulos o no
|
Idioma
|
Char(20)
|
No nulo
|
Idioma de la película
|
Genero
|
Char(20)
|
No nulo
|
Género de la película
|
tituloOriginal
|
Char(30)
|
No nulo
|
Título original de la película
|
tituloDistribucion
|
Char(30)
|
No nulo
|
Título de distribución de la película
|
·
Tabla Promoción:
Campo
|
Tipo de datos
|
|
Descripción
|
IDpromocion
|
Int(20)
|
Clave primaria
|
Identificador de la promoción
|
IDcine
|
Int(20)
|
No nulo, clave foránea
|
Identificador del cine
|
IDsala
|
Int(20)
|
No nulo, clave foránea
|
Identificador de la sala
|
Descripción
|
Char(30)
|
No nulo
|
Descripción de la promoción
|
Descuento
|
Int(20)
|
No nulo
|
Descuento de la promoción
|
·
Tabla Sala:
Campo
|
Tipo de datos
|
|
Descripción
|
IDsala
|
Int(20)
|
Clave primaria
|
Identificador de la sala
|
IDcine
|
Int(20)
|
No nulo, clave foránea
|
Identificador del cine
|
IDpelicula
|
Int(20)
|
No nulo, clave foránea
|
Identificador de la película que se exhibe
|
Ejercicio 10:
·
Tabla Estante:
Campo
|
Tipo de datos
|
|
Descripción
|
IDestante
|
Int(20)
|
Clave primaria
|
Identificador del estante
|
numeroUnidades
|
Int(20)
|
No nulo
|
Número de unidades que puede guardar
|
Tipo
|
Char(20)
|
No nulo
|
Tipo de estante
|
·
Tabla Forma:
Campo
|
Tipo de datos
|
|
Descripción
|
nombreMueble
|
Char(20)
|
Clave foránea, clave primaria
|
Nombre que identifica al mueble
|
IDpieza
|
Int(20)
|
Clave foránea, clave primaria
|
Identificador de la pieza
|
·
Tabla Mueble:
Campo
|
Tipo de datos
|
|
Descripción
|
nombreMueble
|
Char(20)
|
Clave primaria
|
Nombre que identifica al mueble
|
Precio
|
Int(20)
|
No nulo
|
Precio del mueble
|
·
Tabla Pieza:
Campo
|
Tipo de datos
|
|
Descripción
|
IDpieza
|
Int(20)
|
Clave primaria
|
Identificador de la pieza
|
numeroUnidades
|
Int(20)
|
No nulo
|
Número de unidades de la pieza
|
Conclusiones
Más que ser una herramienta que
nos ayude en el desarrollo de nuestra base de datos (aunque hay quienes los
usan como tal), los diccionarios de datos sirven a otros para poder entender
qué datos estamos guardando y para qué e incluso nos pueden servir a nosotros
si posteriormente necesitamos consultar algo acerca de nuestra base de datos.
No hay comentarios:
Publicar un comentario