Claves primarias compuestas en SQL
La identidad de una tabla de unión es el par de cosas que une, no un número nuevo.
CREATE TABLE cart_items (
cart_id INTEGER NOT NULL,
sku TEXT NOT NULL,
quantity INTEGER NOT NULL DEFAULT 1 CHECK (quantity > 0),
added_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (cart_id, sku)
) WITHOUT ROWID;
Cómo funciona
PRIMARY KEY (a, b)hace del par la identidad de la fila.- Sirve a la vez de regla de unicidad y del índice que agregarías de todos modos.
WITHOUT ROWIDguarda la fila en el B-tree de esa misma clave.
Palabras clave y builtins usados aquí
CHECKCREATECURRENT_TIMESTAMPDEFAULTINTEGERKEYNOTNULLPRIMARYTABLETEXTWITHOUT
El intento, en números
- Líneas
- 7
- Caracteres a escribir
- 222
- Tokens
- 45
- Ritmo de tres estrellas
- 85 tpm
Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 32 segundos.
Paso 3 de 5 en Restricciones; paso 3 de 16 en Esquema y restricciones.