En este apartado se presenta de nuevo la base de datos con la que se ha
trabajado en capítulos anteriores y que es la que se utilizará para estudiar el
lenguaje SQL en este capítulo. Para evitar problemas de implementación se
han omitido las tildes en los nombres de tablas y columnas.
La base de datos está formada por las tablas que aparecen a continuación.
Las columnas subrayadas representan la clave primaria de cada tabla.
CLIENTES(codcli, nombre, direccion, codpostal, codpue)
VENDEDORES(codven, nombre, direccion, codpostal, codpue, codjefe)
PUEBLOS(codpue, nombre, codpro)
PROVINCIAS(codpro, nombre)
ARTICULOS(codart, descrip, precio, stock, stock_min, dto)
FACTURAS(codfac, fecha, codcli, codven, iva, dto)
LINEAS_FAC(codfac, linea, cant, codart, precio, dto)
A continuación se especifican las claves ajenas y si aceptan nulos:
La información contenida en esta base de datos pertenece a una empresa de
venta de artículos eléctricos. A continuación se describe el contenido de cada
tabla.
La tabla PROVINCIAS almacena información sobre las provincias de España.
De cada provincia se almacena su nombre (nombre) y un código que la identifica
(codpro).
La tabla PUEBLOS contiene los nombres (nombre) de los pueblos de España.
Cada pueblo se identifica por un código que es único (codpue) y tiene una
referencia a la provincia a la que pertenece (codpro).
La tabla CLIENTES contiene los datos de los clientes: código que identifica a
cada uno (codcli), nombre y apellidos (nombre), calle y número (direccion),
código postal (codpostal) y una referencia a su población (codpue).
La tabla VENDEDORES contiene los datos de los vendedores de la empresa:
código que identifica a cada uno (codven), nombre y apellidos (nombre), calle y
número (direccion), código postal (codpostal), una referencia a su población
(codpue) y una referencia al vendedor del que depende (codjefe), si es el caso.
En la tabla ARTICULOS se tiene el código que identifica a cada artículo
(codart), su descripción (descrip), el precio de venta actual (precio), el
número de unidades del artículo que hay en el almacén (stock), si se conocen,
la cantidad mínima que se desea mantener almacenada (stock_min), si es que
la hay, y si el artículo está en oferta, el descuento (dto) que se debe aplicar
cuando se venda.
La tabla FACTURAS contiene las cabeceras de las facturas correspondientes
a las compras realizadas por los clientes. Cada factura tiene un código único
(codfac), la fecha en que se ha realizado (fecha), así como el IVA (iva)
y el descuento que se le ha aplicado (dto). Si el IVA o el descuento no se
especifican, se deben interpretar como el valor cero (sin IVA o sin descuento).
Es imporante tener en cuenta que se está haciendo un mal uso de los nulos,
ya que interpretar los nulos con valores supone un trabajo extra cuando se
hacen las consultas. Sin embargo, en muchas bases de datos se hace este uso
no apropiado de los nulos y, por lo tanto, el estudio del lenguaje SQL requiere
aprender manejarse con ellos. Cada factura también hace referencia al cliente
Bases de datos - UJI
al que pertenece (codcli) y al vendedor que la ha realizado (codven). Ambas
claves ajenas aceptan nulos.
Las líneas de cada factura se encuentran en la tabla LINEAS_FAC, iden-
tificándose cada una por el número de línea que ocupa dentro de la factura
(codfac, linea). En cada una de ellas se especifica la cantidad de unidades
(cant) del artículo que se compra (codart), el precio de venta por unidad
(precio) y el descuento que se aplica sobre dicho precio (dto), si es que el
artículo está en promoción. Si el descuento no se especifica, se debe interpretar
como sin descuento (valor cero).
La figura 4.1 muestra el esquema de la base de datos gráficamente.
Figura 4.1: Esquema de la base de datos que se utilizará en los ejemplos.


No hay comentarios:
Publicar un comentario