Rullst AcademyRullst Academy/Lección
Bases de datos y SQL I · Lección 05 / 12

Insertar y respetar límites

Insertar con columnas explícitas y diagnosticar restricciones.

Rutas de aprendizaje16 min

Vamos a descubrir juntos

  1. 1

    INSERT INTO tabla (columnas) VALUES (valores) explicita correspondencias. No dependas del orden total. El texto usa comillas simples; apóstrofos manuales se duplican. Las aplicaciones deben parametrizar entradas, como veremos.

  2. 2

    El ejemplo inserta Echo con stock cero válido. Repetir R-01 viola UNIQUE. Un kit_id inexistente viola la clave foránea: el runner activa foreign_keys en cada conexión sin asumir el valor predeterminado.

  3. 3

    Revisa la regla del error y corrige la entrada. No uses una operación que elimina conflictos sin entender consecuencias. La base impone reglas; la aplicación aún debe explicar errores.

  4. 4

    Cada ejecución empieza desde el esquema inicial. Pon INSERT y SELECT en un archivo para consultar la inserción. Guardar lesson.sql guarda instrucciones, no filas en memoria.

Tu mesa de datos

Nuestro modelo: kits.id ← loans.kit_id. Un material puede tener varios préstamos; nombres pueden repetirse. Solo usamos datos ficticios.

Predice antes de abrir la referencia. Muestra salida verificada del ejemplo original, no ejecuta tu texto. Ejecuta cambios con el kit en tu computadora.

-- Insertar y respetar límites
INSERT INTO kits (id, code, label, category, stock) VALUES (5,'X-01','Echo','paper',0);
SELECT id, label, stock FROM kits WHERE id=5;
Comparar con la salida de referencia
[
  {
    "columns": [
      "id",
      "label",
      "stock"
    ],
    "rows": [
      [
        5,
        "Echo",
        0
      ]
    ]
  }
]

Ejecuta el comando en la carpeta extraída. Usa python3 en macOS/Ubuntu o py si es tu launcher Windows. Cada ejecución empieza en memoria; lee README.md para guardar archivos y practicar recuperación.

python lab.py run lesson.sql
Mis archivos y GitHub

El editor guarda tu borrador .sql en este navegador. Descárgalo y sustituye lesson.sql en el kit; en el proyecto final, availability.sql. El ZIP conserva el modelo original. GitHub envía solo el archivo confirmado, sin ejecutar SQL ni enviar la base.

Enlaces oficiales y siguiente paso

✦
TU MISIÓN

Insertar con columnas explícitas y diagnosticar restricciones.

Ahora te toca

Taller de descubrimientos

Lee, predice y comprueba

Insertar con columnas explícitas y diagnosticar restricciones.
Prepara tus respuestas y comprueba cuando estés listo.
Una pausa para entender

¿Por qué se rechaza code repetido?

Necesito una pista

El ejemplo inserta Echo con stock cero válido. Repetir R-01 viola UNIQUE. Un kit_id inexistente viola la clave foránea: el runner activa foreign_keys en cada conexión sin asumir el valor predeterminado.

Cargando tu camino…

Llévatelo contigo

Inserta un objeto válido y prueba dos violaciones por separado. Registra entrada, regla y resultado, incluidos errores esperados.

A tu ritmo

Mis archivos y GitHub

Cada lección puede convertirse en un registro propio: código, notas o un plan de práctica. Guardar un archivo en GitHub es opcional y no cambia tus XP.

Manual del alumno

El editor y las descargas se abren cuando esta lección esté disponible para tu cuenta. Revisa el acceso indicado abajo o vuelve al mapa de la ruta.

Comprobando tu acceso a esta lección…

Rullstpetbot

La IA puede equivocarse. Consulta el material de la lección.