Aplicación práctica para la introducción a SQL: INSERT, UPDATE & SET

Rodrigo Ricardo Publicado el 14 noviembre, 2020 4 minutos y 55 segundos de lectura

Descripción general de la lección y conocimientos necesarios

Para completar esta lección práctica, debería poder hacer lo siguiente:

  • Definir el lenguaje de manipulación de datos (DML) y su uso.
  • Describir declaraciones de actualización de SQL como INSERT y UPDATE
  • Explica cuándo usar el comando SET para actualizar valores.
  • Escribir consultas de selección en SQL

Además, debe tener MySQL instalado junto con los modelos clásicos de base de datos de muestra para usar en este curso. Consulte la siguiente lección de estudyando.com para hacer esto: https://estudyando.com/academy/lesson/practical-application-for-introduction-to-sql-installing-sample-data-for-mysql.html.

Código de programa

Si aún no lo ha hecho, guarde una copia del archivo classicmodels.sql en su computadora. De esta forma puede restaurar la base de datos a su estado original. Dado que agregará y actualizará datos en esta lección, es posible que desee restablecer e intentar nuevamente para practicar.

El siguiente paso es insertar nuevas filas en una tabla. Eche un vistazo a la tabla productLine escribiendo una declaración SQL rápida para ver todo en la tabla:

SELECCIONAR * DE productLines

Observe que solo hay una entrada para aviones. Agregaremos dos nuevas entradas usando el comando INSERT.

INSERT INTO productLines (productLine, textDescription) 
VALUES ('Aviones de la Segunda Guerra Mundial', 'Nuestra impresionante línea de aviones de la Segunda Guerra Mundial es la envidia de los coleccionistas de todas partes. Desde el raro B-18 Bolo hasta el B-29 de gran tamaño, tenemos aviones de todos los teatros de la Segunda Guerra Mundial. ');
INSERT INTO productLines (productLine, textDescription) 
VALUES ('Modern Fighters', 'Desde el F-16 Eagle al SR171 y más allá, tenemos todos los cazas modernos en nuestra colección, incluidos algunos posibles aviones que nuestros observadores han visto ¡sobre el área 51! ');

Dado que estas consultas no generan resultados, el panel central se parecerá a la Figura 1. No se preocupe, siempre puede volver a ejecutar la instrucción SELECT * para confirmar que sus nuevas entradas están allí.

Figura 1: Salida de INSERT
Salida de INSERT

La Figura 2 muestra que hemos ingresado correctamente los nuevos datos.

Figura 2: Validar declaración INSERT
Validar declaración INSERT

Aplicación de código

Agregue nuevos productos a la tabla de productos y asígneles las nuevas líneas de productos que creamos en la sección de código del programa. Por ejemplo, puede agregar algunos aviones de la Segunda Guerra Mundial (por ejemplo, Spitfire, P-38 Lightning o Avro Lancaster) y cazas modernos (F-4 Phantom, F-22, etc.). Si no está familiarizado con los aviones, puede ingresar cualquier cosa que suene bien o incluso puede crear una nueva línea de productos.

Tenga en cuenta que a medida que agrega datos, puede recibir errores. Si es así, mire el panel inferior. Por ejemplo, muchos de los campos de la tabla de productos deben tener un valor.

Preguntas de seguimiento

Pregunta 1

Actualice los siguientes productos a la nueva ID de línea de producto como se describe en la siguiente tabla:

ProductoNueva línea de productos
Mustang P-51-DAviones de la Segunda Guerra Mundial
F / A 18 Hornet 1/71Luchadores modernos
Corsair F4U (jaula para pájaros)Aviones de la Segunda Guerra Mundial

Pregunta 2

Cambie productScale para productCode S24_4278 a 1:72

Pregunta 3

Tony Snowden (cliente n. ° 496) y Carmen Anton (cliente n. ° 465) se convertirán en empleados contratados para la empresa. Cree una declaración INSERT que también seleccione sus registros de clientes y los inserte en empleados . Configure los siguientes campos:

CampoValor
extensión555
correo electrónicofudd.elmer@classicmodels.com
officeCode5
título profesionalConsultor

Clave de respuesta

Las siguientes secciones contienen la solución de aplicación de código y las respuestas a las preguntas de seguimiento.

Aplicación de código

La siguiente declaración inserta un Avro Lancaster en la tabla de productos.

INSERT INTO products (productCode, productName, productLine, productScale, productVendor, productDescription, amountInStock, buyPrice, MSRP) 
 VALUES ('S24_99889', 'Avro Lancaster', 'World War II Planes', '1:72', 'Revell', 'Una hermosa interpretación del clásico bombardero británico', 3, 22.25, 39.95);

Tenga en cuenta que todos los campos eran obligatorios y, por lo tanto, proporcionamos información para cada campo.

Preguntas de seguimiento

A continuación se encuentran las respuestas a las preguntas de seguimiento.

Pregunta 1: use el comando SET

El comando SET actúa un poco diferente a INSERT porque necesita calificar la declaración usando la cláusula WHERE.

Nota: Al ejecutar los comandos SET, puede recibir un error 1175 en MySQL Workbench. Si ese es el caso, está usando el modo de actualización seguro e intentó actualizar una tabla sin un DÓNDE que usa una columna CLAVE. Para deshabilitar el modo seguro, cambie la opción en Preferencias -> Editor SQL y luego vuelva a conectarse a la base de datos.

Para actualizar el P-51 y el F / A 18 a la línea de productos Aviones de la Segunda Guerra Mundial y Cazas Modernos respectivamente, ingrese la siguiente declaración SQL:

ACTUALIZAR productos SET productLine = 'Modern Fighters' DONDE productName = 'F / A 18 Hornet 1/72'; 
ACTUALIZAR productos SET productLine = 'Aviones de la Segunda Guerra Mundial' DONDE productName = 'P-51-D Mustang';

Si comprueba la tabla de productos , debería ver sus entradas como se muestra en la Figura 3.

SELECCIONE * DE classicmodels.products DONDE productLine in ('Aviones de la Segunda Guerra Mundial', 'Modern Fighters');

Figura 3: Nuevas líneas de productos y productos
Nuevas líneas de productos y productos

Pregunta 2: Cambiar la información del código de producto

Aquí está el SQL para cambiar la escala:

ACTUALIZAR productos SET productScale = '1:72' DONDE productCode = 'S24_4278';

Pregunta 3: Uso de INSERT con SELECT

La instrucción INSERT se puede combinar con una instrucción SELECT para guardar datos de una tabla en otra.

INSERT INTO empleados (employeeNumber, lastName, firstName, extension, email, officeCode, jobTitle) 
SELECT customerNumber, contactLastName, contactFirstName, 5555, 'fudd.elmer@classicmodels.com', 5, 'Consultant' FROM clientes DONDE customerNumber = 465;

Luego, repetiría este código pero agregaría el cliente 496.

Explora más sobre este tema

Selecciona un tema y sigue aprendiendo...

Rodrigo Ricardo
Rodrigo Ricardo Editor y fundador