💡 Idea central

En las clases anteriores aprendimos a crear y modificar la estructura de las tablas. Ahora damos el siguiente paso: poner datos dentro de ellas.

Para eso utilizamos INSERT.

La idea fundamental de esta clase es aprender a insertar datos de forma:

Una diferencia importante de esta clase es que ya no estamos trabajando solamente con la estructura de la base de datos. Ahora estamos introduciendo datos reales en las tablas.


1. Preparando las tablas

Para los ejemplos se utilizan cuatro tablas:

paises
categorias
tipos_cliente
clientes

Su relación más importante para esta clase es:

tipos_cliente
     │
     │  tipo_cliente_id
     ▼
  clientes

Es decir, clientes.tipo_cliente_id es una llave foránea que apunta a tipos_cliente.tipo_cliente_id.

La tabla clientes se define así:

CREATE TABLE clientes (
    cliente_id INTEGER GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
    nombre TEXT NOT NULL,
    email VARCHAR(100) NOT NULL UNIQUE,
    activo BOOLEAN NOT NULL DEFAULT TRUE,
    tipo_cliente_id INTEGER NOT NULL
        REFERENCES tipos_cliente(tipo_cliente_id)
);

Esto será importante más adelante, porque no podemos inventar un tipo_cliente_id que no exista.