Tablas STRICT en SQL
El tipado flexible de SQLite es una virtud hasta el día en que preferirías que se negara.
CREATE TABLE readings (
id INTEGER PRIMARY KEY,
sensor TEXT NOT NULL,
celsius REAL NOT NULL,
payload ANY,
taken_at TEXT NOT NULL
) STRICT;
INSERT INTO readings (sensor, celsius, taken_at)
VALUES ('kitchen', 21.5, '2026-07-29 08:00:00');
Cómo funciona
- Una tabla
STRICTrechaza un valor cuyo tipo no coincide con la columna. - Solo se permite un conjunto fijo de nombres de tipo: INT, INTEGER, REAL, TEXT, BLOB, ANY.
ANYdevuelve una columna al tipado flexible, a propósito.
Palabras clave y builtins usados aquí
ANYCREATEINSERTINTEGERINTOKEYNOTNULLPRIMARYREALSTRICTTABLETEXTVALUES
El intento, en números
- Líneas
- 10
- Caracteres a escribir
- 237
- Tokens
- 50
- Ritmo de tres estrellas
- 85 tpm
Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 35 segundos.
Paso 4 de 5 en Restricciones; paso 4 de 16 en Esquema y restricciones.