Insertar nuevos registros, sentencia INSERT

El comando SQL de inserción de registros puede ser tremendamente útil a la hora de llenar tablas cuya información obtienes mediante otra fuente de datos como otras tablas o consultas.

Un ejemplo sencillo: cómo añadir un registro a la tabla Actividades que únicamente tiene un campo ya que el identificador es autonumérico y por lo tanto, se genera automáticamente al añadir un nuevo registro:

Icono IDevice

Actividad 12

  1. En la ventana principal de la base de datos haz clic sobre el menú Herramientas y después ejecuta el comando SQL.

  2. En la primera sección del cuadro de diálogo escribe la siguiente instrucción:

    INSERT INTO "Actividades" ("Actividad") VALUES ('Voleibol')

  3. Después de escribir la sentencia SQL, haz clic en el botón Ejecutar.

  4. Si no existe ningún problema aparecerá en la parte inferior un mensaje indicando que el comando se ha ejecutado correctamente.

  5. Revisa la tabla Actividades y comprueba que se ha añadido el registro.

Así planteado quizás no te parezca demasiado interesante el comando INSERT pero, ¿qué te parecería añadir una consulta a esta misma sentencia y que pudieras incluir en la tabla seleccionada el resultado de la consulta? Por ejemplo, imagina que has obtenido una tabla de deportes (MisDeportes) y quieres utilizarla para rellenar la tabla de actividades deportivas (Actividades).

La instrucción SQL debería tener el siguiente aspecto:

INSERT INTO "Actividades" ("Actividad") SELECT "NombreDeporte" FROM "MisDeportes"

Tras haber ejecutado lo anterior, comprueba que efectivamente la tabla Actividades, que anteriormente sólo tenía cuatro registros, tiene ahora también los registros de la tabla MisDeportes.

Por supuesto, a la consulta que sirve para añadir registros puedes añadirle tantas condiciones y cláusulas como necesites. Por ejemplo, puedes elegir todos aquellos deportes que no sean de tipo individual (Tenis, Atletismo…)

INSERT INTO "Actividades" ("Actividad") SELECT "NombreDeporte" FROM "MisDeportes" WHERE ("Tipo" = 'Individual')


Icono IDevice

Importante

Lo más importante en este tipo de consultas es que el número de campos que devuelve la consulta sea el mismo que intentas insertar. También es fundamental que los tipos de los campos coincidan.