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:
RETURNING;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.
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.