Summary of Managing Business Information Systems

Managing Business Information Systems: An ERP Implementation Guide

Introducción

Las bases de datos relacionales representan información en tablas y establecen relaciones entre ellas para modelar el mundo real. Entender los tipos de relaciones (1:1, 1:∞, ∞:∞) y su implementación práctica es clave para diseñar esquemas coherentes y eficientes.

Definición: Una relación entre tablas conecta registros de una tabla con registros de otra tabla mediante claves primarias y foráneas.

Conceptos básicos

  • Tabla: conjunto de registros con atributos (columnas). Cada tabla tiene una clave primaria (PK) que identifica unívocamente cada registro.
  • Clave foránea (FK): campo en una tabla que referencia la PK de otra tabla para establecer una relación.

Tipos de relaciones

1:1 (uno a uno)

  • Descripción: Cada registro de la tabla A se relaciona con como máximo un registro de la tabla B y viceversa.
  • Implementación: añadir la PK de una tabla como FK en la otra. Es buena práctica poner la FK en la tabla que se crea después o en la que tenga sentido lógico.

Definición: Relación 1:1: Cada registro de A corresponde a un único registro de B y cada registro de B corresponde a un único registro de A.

Ejemplo práctico:

  • Tablas: ORDERS (OrderCode PK, OrderDescription, OrderEntryDate, ...) y SHIPMENTS (ShipmentCode PK, ShipmentDescription, ExpectedDeliveryDate, ...)
  • Regla del negocio: cada pedido genera una única entrega y cada entrega corresponde a un único pedido.
  • Implementación: agregar OrderCode como FK en SHIPMENTS.

Tabla comparativa: 1:1

CaracterísticaDetalle
Cardinalidad1 — 1
Dónde ubicar la FKTabla creada después o la que representa la entidad dependiente
Uso típicoDatos de extensión, datos opcionales que no siempre existen

1:∞ (uno a muchos)

  • Descripción: Un registro de la tabla A puede asociarse con muchos registros de la tabla B, pero cada registro de B solo se asocia con un registro de A.
  • Implementación: poner la PK de A como FK en B.

Definición: Relación 1:∞: Un registro de A puede relacionarse con múltiples registros de B; cada registro de B se relaciona con un solo registro de A.

Ejemplo práctico:

  • Tablas: CUSTOMER (CustomerID PK, Name, ...) y ORDERS (OrderCode PK, OrderDate, CustomerID FK, ...)
  • Un cliente puede tener muchos pedidos; cada pedido pertenece a un único cliente.

∞:∞ (muchos a muchos)

  • Descripción: Cada registro de A puede relacionarse con varios registros de B y cada registro de B puede relacionarse con varios registros de A.
  • Implementación: crear una tabla intermedia (JOIN table) que contenga al menos las FK de ambas tablas; la combinación de esas FK suele ser la PK de la tabla intermedia.

Definición: Relación ∞:∞: Registros de A pueden estar vinculados con múltiples registros de B y viceversa; se resuelve mediante una tabla de relación.

Ejemplo práctico:

  • Tablas: ORDERS (OrderCode PK, ...) y PRODUCTS (ProductCode PK, ...)
  • Un pedido puede incluir varios productos y un producto puede estar en muchos pedidos.
  • Tabla intermedia: ORDER_LINES (OrderCode FK, ProductCode FK, Quantity, Price), con PK compuesta por (OrderCode, ProductCode).

Tabla comparativa: ∞:∞ vs 1:∞

TipoImplementaciónEjemplo
1:∞FK en la tabla del “muchos”CUSTOMER -> ORDERS
∞:∞Tabla intermedia con FKs y PK compuestaORDERS <-> PRODUCTS con ORDER_LINES

Pasos para modelar relaciones (metodología práctica)

  1. Identificar las tablas que intervienen en la consulta o requisito.
  2. Formular siempre las dos preguntas:
    • "Cada registro de A, ¿con cuántos registros de B puede relacionarse?"
    • "Cada registro de B, ¿con cuántos registros de A puede relacionarse?"
  3. Determinar el tipo de relación (1:1, 1:∞, ∞:∞) según las respuestas.
  4. Implementar la relación siguiendo las reglas de colocación de FK:
    • Para 1:1, elegir una tabla para alojar la FK (preferiblemente la creada después o la dependiente).
    • Para 1:∞, agregar la PK del lado 1 como FK en el lado ∞.
    • Para ∞:∞, cre
Zaregistruj se pro celé shrnutí
FlashcardsKnowledge testSummaryPodcastMindmap
Start for free

Already have an account? Sign in

Relaciones en Bases de Datos

Klíčové pojmy: Una relación 1:1 vincula un registro de A con un registro de B y viceversa, En 1:1 la FK puede estar en cualquiera de las dos tablas; preferir la creada después, En 1:∞ la PK del lado 1 se añade como FK en el lado ∞, Una relación ∞:∞ se implementa mediante una tabla intermedia (JOIN) con las dos FKs, La PK de la tabla intermedia suele ser la combinación de las dos FKs, Siempre formular las dos preguntas: ¿cuántos de B por A? y ¿cuántos de A por B?, En la tabla JOIN se pueden guardar atributos de la relación (cantidad, precio, etc.), Definir restricciones de integridad referencial (ON DELETE/ON UPDATE), Separar datos opcionales en otra tabla puede optimizar un 1:1 con muchos nulos, Ubicar la FK en la tabla conceptualmente dependiente o creada después

## Introducción Las bases de datos relacionales representan información en tablas y establecen relaciones entre ellas para modelar el mundo real. Entender los tipos de relaciones (1:1, 1:∞, ∞:∞) y su implementación práctica es clave para diseñar esquemas coherentes y eficientes. > Definición: Una relación entre tablas conecta registros de una tabla con registros de otra tabla mediante claves primarias y foráneas. ## Conceptos básicos - **Tabla**: conjunto de registros con atributos (columnas). Cada tabla tiene una **clave primaria (PK)** que identifica unívocamente cada registro. - **Clave foránea (FK)**: campo en una tabla que referencia la PK de otra tabla para establecer una relación. ## Tipos de relaciones ### 1:1 (uno a uno) - Descripción: Cada registro de la tabla A se relaciona con como máximo un registro de la tabla B y viceversa. - Implementación: añadir la PK de una tabla como FK en la otra. Es buena práctica poner la FK en la tabla que se crea después o en la que tenga sentido lógico. > Definición: Relación 1:1: Cada registro de A corresponde a un único registro de B y cada registro de B corresponde a un único registro de A. Ejemplo práctico: - Tablas: ORDERS (OrderCode PK, OrderDescription, OrderEntryDate, ...) y SHIPMENTS (ShipmentCode PK, ShipmentDescription, ExpectedDeliveryDate, ...) - Regla del negocio: cada pedido genera una única entrega y cada entrega corresponde a un único pedido. - Implementación: agregar OrderCode como FK en SHIPMENTS. Tabla comparativa: 1:1 | Característica | Detalle | |---|---| | Cardinalidad | 1 — 1 | | Dónde ubicar la FK | Tabla creada después o la que representa la entidad dependiente | | Uso típico | Datos de extensión, datos opcionales que no siempre existen | ### 1:∞ (uno a muchos) - Descripción: Un registro de la tabla A puede asociarse con muchos registros de la tabla B, pero cada registro de B solo se asocia con un registro de A. - Implementación: poner la PK de A como FK en B. > Definición: Relación 1:∞: Un registro de A puede relacionarse con múltiples registros de B; cada registro de B se relaciona con un solo registro de A. Ejemplo práctico: - Tablas: CUSTOMER (CustomerID PK, Name, ...) y ORDERS (OrderCode PK, OrderDate, CustomerID FK, ...) - Un cliente puede tener muchos pedidos; cada pedido pertenece a un único cliente. ### ∞:∞ (muchos a muchos) - Descripción: Cada registro de A puede relacionarse con varios registros de B y cada registro de B puede relacionarse con varios registros de A. - Implementación: crear una tabla intermedia (JOIN table) que contenga al menos las FK de ambas tablas; la combinación de esas FK suele ser la PK de la tabla intermedia. > Definición: Relación ∞:∞: Registros de A pueden estar vinculados con múltiples registros de B y viceversa; se resuelve mediante una tabla de relación. Ejemplo práctico: - Tablas: ORDERS (OrderCode PK, ...) y PRODUCTS (ProductCode PK, ...) - Un pedido puede incluir varios productos y un producto puede estar en muchos pedidos. - Tabla intermedia: ORDER_LINES (OrderCode FK, ProductCode FK, Quantity, Price), con PK compuesta por (OrderCode, ProductCode). Tabla comparativa: ∞:∞ vs 1:∞ | Tipo | Implementación | Ejemplo | |---|---|---| | 1:∞ | FK en la tabla del “muchos” | CUSTOMER -> ORDERS | | ∞:∞ | Tabla intermedia con FKs y PK compuesta | ORDERS <-> PRODUCTS con ORDER_LINES | ## Pasos para modelar relaciones (metodología práctica) 1. Identificar las tablas que intervienen en la consulta o requisito. 2. Formular siempre las dos preguntas: - "Cada registro de A, ¿con cuántos registros de B puede relacionarse?" - "Cada registro de B, ¿con cuántos registros de A puede relacionarse?" 3. Determinar el tipo de relación (1:1, 1:∞, ∞:∞) según las respuestas. 4. Implementar la relación siguiendo las reglas de colocación de FK: - Para 1:1, elegir una tabla para alojar la FK (preferiblemente la creada después o la dependiente). - Para 1:∞, agregar la PK del lado 1 como FK en el lado ∞. - Para ∞:∞, cre