Northwind 2.0 Starter Edition: diseño de bases de datos

Se aplica a
Access para Microsoft 365 Access 2024 Access 2021 Access 2019

En las secciones siguientes se muestra cómo se diseñaron las relaciones de la tabla de base de datos. Los nombres de objeto se proporcionan para que pueda examinarlos fácilmente en la base de datos de Northwind 2.0 Starter Edition.

Diseño de tablas y relaciones de base de datos

Para abrir el diagrama de relaciones que muestra las seis tablas y las relaciones entre ellas, seleccione Relaciones deherramientas> de base de datos.

Diagrama de relaciones de base de datos

En este diagrama se muestran las seis tablas. En el diagrama, las líneas entre tablas identifican las relaciones entre ellas. El símbolo 1 e infinito () al final de las líneas representan un lado de una relación (por ejemplo, un cliente) y varios lados de una relación. Por ejemplo, un cliente envía muchos pedidos. Para obtener más información, vea Guía de relaciones de tabla.

Más información sobre los principios de tablas

Los siguientes principios se aplican a las tablas de Northwind 2.0 Starter Edition, así como a las tablas en general.

Claves principales Identifique cada registro de una tabla de forma exclusiva. Todas las tablas tienen una clave principal. En el diagrama de relaciones, los símbolos de clave identifican esas claves principales. Las convenciones de nomenclatura de clave principal reciben el nombre de la tabla en la que se encuentran, por ejemplo, "TableNameID". 

Eficiencia Para un mejor rendimiento y un almacenamiento más eficaz, las claves principales deben ser numéricas. Además, es más cómodo hacer que Access genere automáticamente el nuevo valor único para la clave principal de cada nuevo registro. El tipo de datos Autonumeración tiene ambas características. De lo contrario, los números automáticos no son significativos y no sirven para ningún otro propósito. Para obtener más información, vea Agregar un campo Autonumeración como clave principal.

Claves externas Una tabla puede tener una o más claves externas, en función de si está relacionada con otras tablas de la base de datos. Este tipo de clave contiene valores que se corresponden con los valores de la clave principal de la tabla relacionada. 

Índices únicos Otros campos de tablas también pueden tener sus propios índices únicos, por ejemplo, OrderStatus.StatusCode. Es ilógico tener dos estados de pedido en la tabla OrderStatus con el mismo código, aunque StatusCode no sea la clave principal. Un índice único indica a Access que evite valores duplicados en ese campo.

Índices no únicos Las tablas también pueden tener índices para acelerar las búsquedas y ordenar en esos campos, por ejemplo, Pedidos.FechaDePedido. Muchos pedidos se pueden realizar en el mismo día y, a menudo, desea buscar y ordenar en fechas de pedido. Hay un índice no único en ese campo para acelerar la búsqueda y la ordenación.

Nombres de tabla y campo Puedes nombrar las cosas como quieras, pero la coherencia es importante. Se recomienda que los nombres de tabla y campo sean de una o más palabras sin espacios entre ellas y sin caracteres especiales, como una barra diagonal (/), un signo de almohadilla (#) o porcentaje (%). Por ejemplo, use FechaPedido, pero no Fecha de Pedido; use OrderNumber o OrderNo, pero no Order#. 

CamelCase Ponga en mayúsculas las palabras para resaltar partes individuales del nombre, por ejemplo, FechaPedido, pero no FechaPedido o FechaPedido.

Valor obligatorio Este principio pone de relieve la importancia de las reglas de negocio para una aplicación. Algunas situaciones requieren valores o incluso valores específicos en algunos campos. Por ejemplo, ¿de qué sirve un Pedido sin conocer al Cliente que lo realizó? Esto significa que IdCliente es un campo obligatorio para la tabla Pedidos. 

Campos calculados Access admite campos calculados en tablas, por ejemplo, el campo Employees.FullName. Es posible que prefiera crear campos calculados en una consulta en lugar de en una tabla.

Campos de datos adjuntos Access admite campos de datos adjuntos, por ejemplo, Employees.Picture, que contiene una imagen del empleado. Los datos adjuntos pueden almacenar imágenes, documentos, correos electrónicos y otra información binaria. Los datos adjuntos ocupan mucho espacio en la base de datos. En su lugar, es más eficaz almacenar datos adjuntos en un servidor de archivos.

Campos multivalor Como su nombre indica, los campos multivalor almacenan uno o varios valores en un único campo, por ejemplo, Employees.Title. Le sugerimos que los use con moderación, especialmente si desea aumentar el tamaño de su base de datos. La mayoría de los otros sistemas de bases de datos no los tienen, por lo que eso requeriría mucho trabajo. 

Para obtener más información sobre los tipos de datos, vea Introducción a los tipos de datos y las propiedades de campo.

Tablas individuales en Northwind

En esta sección se describen las características más importantes de cada tabla. Para revisar el diseño de una tabla, selecciónela en el panel de navegación, haga clic con el botón secundario en ella, elija Vista Diseño o seleccioneRelaciones deherramientas> de base de datos y, después, haga clic con el botón derecho en un objeto de tabla. Para obtener más información, consulte Introducción a tablas.

Importante

Evite el uso de palabras reservadas que puedan causar conflictos de nombres. Para obtener más información, consulte Obtener información sobre las palabras y símbolos reservados de Access.

Tabla de empleados

Esta tabla almacena información sobre los empleados de Northwind. 

Fields Descripción
Nombre, Apellidos Ambos nombres son necesarios y, en Northwind, juntos deben ser una combinación única. En el diseño de tabla, al abrir el cuadro de diálogo Índices , puede ver que Nombre + Apellidos tienen un índice único. Dado que Nombre y Apellidos están indexados de forma única, la tabla Neptuno no puede almacenar dos empleados con el mismo nombre. En otras situaciones, puede usar una regla de negocio diferente.
FullNameFNLN,
FullNameLNFN
Examine la propiedad de expresión de los campos calculados para ver cómo Access combina los valores en los campos calculados. Para incluir una inicial del segundo nombre, agréguela a la expresión existente con el espaciado adecuado entre los componentes.
Campos de teléfono La regla de negocio para los teléfonos es que la preferencia de los empleados es más relevante que el tipo de servicio. Por lo tanto, se usan los números de teléfono principal y secundario en lugar de los números de teléfono móvil, oficina, hogar, etc.
Saludo El saludo es un campo de texto corto. Para ilustrar la característica de campo multivalor en Access, es un cuadro combinado con una lista editable de valores predefinidos. Las listas cortas y estáticas como esta suelen ser candidatas para campos multivalor porque no cambian mucho, si es que alguna vez lo hacen.
JobTitle JobTitle es otro campo obligatorio.

Tabla Clientes

En esta tabla se almacena información sobre los clientes de Northwind. 

Fields Descripción
CustomerName Los clientes de Northwind son empresas y se requiere un nombre de cliente. Sin embargo, a diferencia de los nombres de los empleados, no está indexada de forma única, lo que permite que dos o más clientes tengan el mismo nombre.
PrimaryContactFirstName, PrimaryContactLastName,
PrimaryContactJobTitle
Los nombres y apellidos del contacto principal y el cargo no son obligatorios porque es posible que los clientes no tengan a una persona como contacto principal. Los contactos no pueden dar su puesto de trabajo para un pedido.
BusinessPhone Northwind requiere solo un número de teléfono para cada cliente, aunque esto elimina la capacidad de capturar varios números de teléfono para los clientes o para los contactos de los clientes. En situaciones del mundo real, las reglas de negocio más complejas normalmente se aplican a la información de contacto.
Address, City
Estado, código postal
Northwind necesita una dirección para enviar los pedidos a los clientes. Solo hay una dirección genérica para un cliente. En situaciones reales, los clientes suelen tener distintas direcciones de facturación, envío u otras direcciones. Una regla de negocio diferente para su organización requeriría campos adicionales.
Notas El campo Notas es un tipo de datos de texto largo, que almacena hasta 1 GB de texto. Esto le permite escribir comentarios detallados sobre los clientes para usarlos en situaciones de pedido posteriores.

Tabla de pedidos

Esta tabla almacena información sobre las órdenes de Northwind. 

Fields Descripción
OrderDate, ShippedDate, PaidDate Los pedidos requieren tres fechas. Todos son del tipo de datos de fecha y hora, pero con dos formatos. OrderDate tiene una fecha y una hora porque es posible que le interese analizar el volumen de pedidos para diferentes partes del día. Para las otras dos fechas, solo se requiere la fecha. Una regla de validación de tabla para FechaDeEnvío y FechaPagada garantiza que esas fechas no sean anteriores a la FechaPedido.
OrderStatusID El estado del pedido indica dónde se encuentra el pedido en el flujo de trabajo Northwind. Los pedidos se mueven a través de cuatro fases: Nuevo ->Facturado ->Enviado ->Cerrado. La clave externa para el OrderStatus actual usa OrderStatusID de la tabla de búsqueda de OrderStatus. El uso de una tabla de búsqueda de estado garantiza que solo se puedan asignar los cuatro estados predefinidos a un pedido.

Tabla de detalles del pedido

Esta tabla almacena información sobre los detalles del pedido de Northwind. 

Fields Descripción
Código de pedido Cada artículo de línea de la tabla Detalles de pedidos debe pertenecer a un pedido de la tabla Pedidos. OrderID es una clave externa que identifica ese orden. Como se ha señalado anteriormente, una orden que contiene una o más líneas de pedido ilustra una relación de uno a varios.
Id. de producto Cada registro de la tabla Detalles de pedidos incluye el ProductID del Producto solicitado. ProductID es una clave externa en la tabla Detalles del pedido, que identifica ese producto en ese orden. Esta es también una relación de uno a varios.
OrderID+ ProductID Como vio en la tabla Empleados, varios campos pueden tener un índice único. El índice único sobre OrderID+ProductID en la tabla Detalles de pedido garantiza que cada pedido contenga un producto solo una vez. Al abrir la hoja de propiedades Índices desde la cinta de opciones, puede ver este índice único.

Tabla de productos

En esta tabla se almacena información sobre los productos de Northwind. 

Fields Descripción
CódigoDeProducto Además de la clave principal, ProductID, los productos Northwind tienen un código de producto indexado de forma única y fácil de usar. Los empleados normalmente se refieren a los códigos de producto, no a los valores de la clave principal. El código de producto es un valor compuesto que consta de una designación de categoría y un número, por ejemplo, B-1 para "Bebida", producto 1.
Product Name,
Descripción del producto
Además de los nombres de producto de texto corto, se aplica una descripción de texto largo a los productos. Este valor podría usarse en la descripción de un catálogo o para responder a las preguntas de los clientes.
PrecioUnidad Todos los productos se venden con un precio unitario para cada artículo, lo que simplifica la base de datos como muestra de características. En la mayoría de las situaciones del mundo real, los precios suelen ser significativamente más complejos.

Consulte también

Northwind 2.0 Starter Edition