Aplicación práctica para bases de datos relacionales y SQL: uso de MySQL para ingresar datos en una base de datos

Avatar del autor
Publicado el • Actualizado el • 5 minutos y 55 segundos de lectura
Ver mi bloc de notas

Mis Artículos Guardados

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

Para completar con éxito esta lección, se recomienda que complete tanto la instalación de MySQL (como se describe en la siguiente lección de Estudyando.com – Instalación de MySQL Server para la programación de bases de datos) y la Aplicación práctica para bases de datos relacionales y SQL: Creación de una base de datos en MySQL.

Deberias ser capaz de:

  • Definir el modelo relacional
  • Definir claves primarias y externas
  • Realizar una función INSERT de SQL

Código de programa

Cuando creó una base de datos MySQL básica, creó cuatro tablas: coches, tipo de carro, fabricante y pistas. Las tablas se muestran en la Figura 1.

Figura 1: Tablas MySQL existentes
Tablas de muestra existentes

La tabla de coches y la tabla de fabricante se unen a través del atributo ManufacturerID (clave principal para la tabla de fabricante; clave externa para la tabla de coches).

Crear la consulta SQL

Primero, haga clic en el icono + SQL en Workbench para crear una nueva consulta SQL como se muestra en la Figura 2:

Figura 2: Crear nueva consulta MySQL
Crear nueva consulta MySQL

Considere el orden de entrada de datos. Si vamos a ingresar registros para vagones de tren, lo más probable es que desee ingresar datos del fabricante para tener una identificación de fabricante para el vagón de tren. Ingresemos esa consulta primero.

INSERT INTO train.manufacturer (ManufacturerName) 
VALUES ('Athearn');

Haga clic en el icono Ejecutar:

Figura 3: Ejecutar consulta MySQL
Ejecutar SQL

La clave principal, ManufacturerID, se numera automáticamente, por lo que no es necesario que la especifique. Repita el código anterior y agregue algunos fabricantes más: Atlas, Bowser, Kato, Marklin, etc. A continuación, haga clic con el botón derecho en la tabla de fabricantes en la pestaña Esquemas y seleccione la opción para consultar las primeras 1000 filas, como se muestra en la Figura 4.

  ¿Qué es el diseño de interiores comercial?

Figura 4: Seleccione 1000 filas MySQL
Seleccione 1000 filas MySQL

La figura 5 muestra los resultados de la consulta. Sus resultados pueden ser diferentes, según los datos que ingresó en la tabla:

Figura 5: Consulta de tabla de fabricante
Consulta de tabla de fabricante

Aplicación de código

¡Ahora es tu turno de escribir consultas SQL!

Ahora mismo tenemos una identificación de fabricante. La tabla de coches tiene otra clave externa, carTypeID. Esto está conectado a la clave principal en la tabla de tipos de cartuchos. Ingrese registros en la tabla carType. Los tipos de vagones incluyen, pero no se limitan a: locomotora, furgón de cola, vagón de carbón, vagón de mineral, vagones, etc.

Preguntas de seguimiento

Con las dos tablas creadas hasta ahora, ahora debería poder ingresar registros en la tabla de autos. Responda las siguientes preguntas para mejorar sus habilidades.

Ingrese datos en la tabla de autos

Ingrese algunos datos de muestra en la tabla de automóviles, asegurándose de incluir los valores de clave externa que coincidan con las claves primarias del fabricante y las tablas de tipo de carro. Antes de ingresar, sugerimos consultar tanto las tablas carType como las del fabricante para que pueda acceder fácilmente a esos valores.

Ingrese datos en la tabla de pistas

Luego, ingrese registros en la tabla de pistas, asegurándose de ingresar ID de fabricante válidos. Los tipos de pistas pueden ser rectas, curvas, divisorias, motorizadas, etc.

Ingrese un ID de fabricante no válido

Ahora, ingrese un registro en la tabla de autos, pero ingrese un ID de fabricante no válido (por ejemplo, 905). ¿Qué sucede cuando intenta ejecutar la consulta?

  Aplicación práctica: Superar las barreras al pensamiento global en los negocios

Escala de vías y trenes

Observe cómo tenemos el atributo de escala en un par de tablas (pistas y autos). ¿Cómo podríamos cambiar la base de datos para mantener la normalización? ¿Cómo afectaría esto la forma en que ingresamos los datos?

Clave de respuesta

A continuación se encuentran las respuestas a la aplicación del código y las preguntas de seguimiento.

Aplicación de código

Debería haber ingresado varias líneas de SQL para ingresar los datos. El siguiente código puede ingresarse en el editor SQL y ejecutarse a la vez. ¡Solo asegúrese de tener el punto y coma al final de cada línea que desee ejecutar!

INSERT INTO train.cartype (carType) 
VALUES ('furgón de cola');
INSERT INTO train.cartype (carType)
VALUES ('locomotora');
INSERT INTO train.cartype (carType)
VALUES ('vagón de carbón');
INSERT INTO train.cartype (carType)
VALUES ('mineral car');
INSERT INTO train.cartype (carType)
VALUES ('vagón');

Preguntas de seguimiento

Las respuestas a las preguntas de seguimiento se detallan a continuación.

Ingrese datos en la tabla de autos

Ingrese algunos datos de muestra en la tabla de carros, asegurándose de incluir los valores de clave externa que coincidan con las claves primarias del fabricante y las tablas de tipo de carro.

El carID es un campo que se incrementa automáticamente, por lo que no tenemos que ingresarlo. ¡Pero recuerde que carTypeID y ManufacturerID deben coincidir con los valores existentes que ingrese! El siguiente SQL es una entrada de muestra de coches para la tabla.

INSERT INTO train.cars (carTypeID, wheelCount, ManufacturerID, scale) 
VALUES (1, 8, 1, 'N');
INSERT INTO train.cars (carTypeID, wheelCount, ManufacturerID, scale)
VALUES (1, 6, 3, 'HO');
INSERT INTO train.cars (carTypeID, wheelCount, ManufacturerID, scale)
VALUES (6, 4, 4, 'HO');

Puede parecer extraño ingresar principalmente números, pero este es el quid del modelo relacional. Las tablas se unen mediante claves primarias / externas que lo mantienen todo organizado. A medida que avance en el curso, redactará consultas que unan todos estos datos y los presenten de forma agradable.

  Aplicación práctica: cálculo de la desviación estándar

Ingrese datos en la tabla de pistas

Luego, ingrese registros en la tabla de pistas, asegurándose de ingresar ID de fabricante válidos.

INSERT INTO train.tracks (trackType, scale, conectores, ManufacturerID) 
VALUES ('Powered', 'HO', 4, 4);

La Figura 6 muestra una muestra de los tipos de vías que puede tener en una base de datos de trenes modelo.

Figura 6: Tabla de pistas después de insertar
Tabla de seguimiento después de insertar

ID de fabricante no válido

Ingrese un ID de fabricante de 905 en la tabla de autos, como se muestra en la declaración INSERT:

INSERT INTO train.cars (carTypeID, wheelCount, ManufacturerID, scale) 
VALUES (1, 12, 905, 'N');

Cuando ejecuta esta declaración, MySQL muestra un error en la parte inferior como se muestra en la Figura 7.

Figura 7: INSERT no válido
Inserto no válido

Si pasa el cursor sobre el mensaje, dice:

Código de error: 1452. No se puede agregar o actualizar una fila secundaria: falla una restricción de clave externa ('trenes'. 'Autos', RESTRICCIÓN 'carMan' LLAVE EXTRANJERA ('ID de fabricante') REFERENCIAS 'fabricante' ('ID de fabricante') ON DELETE CASCADE EN CASCADA DE ACTUALIZACIÓN)

Esto significa que no hay ningún ID de fabricante coincidente de 905 en la tabla de fabricantes; deberá ingresar una identificación válida.

Normalización

Se repite el atributo de escala . Deberíamos crear otra tabla llamada scale y agregarle un scaleID . Esto requeriría que volvamos a ingresar los datos en la base de datos para reemplazar el valor de la escala en las tablas con el ID de la escala real.

Continúa con:

  1. Álgebra

    Problemas de práctica del teorema binomial

    Pasos del teorema del binomio Aunque el teorema del binomio es el atajo para elevar...

  2. Administración

    Aplicación práctica: redacción de preguntas para entrevistas de trabajo

    Preparación para escribir preguntas de entrevista Antes de entrevistar a un candidato potencial para su...

  3. Negocios

    Aplicación práctica: preparación de estados financieros

    Preparación de estados financieros Los estados financieros de una organización se encuentran entre sus documentos...

  4. Administración

    Aplicación práctica: Infografía de los 14 principios de gestión de Henri Fayol

    Por qué los 14 principios de gestión de Fayol son importantes en la actualidad Los...

Selecciona un tema para seguir aprendiendo