Creación y actualización de vistas de base de datos

MySQLBeginner
Practicar Ahora

Introducción

En este proyecto, aprenderás cómo crear una vista de estudiante en una base de datos MySQL y actualizar los datos en la vista.

👀 Vista previa

MySQL [edusys]> SELECT * FROM student WHERE ID = '70557';
+-------+---------+------+
| id    | name    | cred |
+-------+---------+------+
| 70557 | History |    0 |
+-------+---------+------+
1 fila en el conjunto (0.001 segundos)

🎯 Tareas

En este proyecto, aprenderás:

  • Cómo crear una vista basada en una tabla existente
  • Cómo actualizar los datos en una vista

🏆 Logros

Después de completar este proyecto, podrás:

  • Comprender el concepto de una vista de base de datos y cómo crear una
  • Modificar los datos en una vista utilizando instrucciones de actualización SQL
  • Aplicar estas habilidades para administrar y mantener datos en una base de datos

Creando la vista de estudiantes

En este paso, aprenderás cómo crear una vista de estudiantes basada en la tabla student.

  1. Iniciar MySQL:

    sudo /etc/init.d/mysql start
  2. Iniciar sesión en la terminal de MySQL:

    mysql -uroot
  3. Importar los datos del script edusys.sql a MySQL:

    SOURCE ~/project/edusys.sql
  4. Crear un nuevo archivo llamado updateView.sql en el directorio ~/project.

  5. Agregar código al archivo para crear una vista llamada teaches_view que contenga los siguientes campos:

    student student_view
    ID id
    name name
    tot_cred cred

    El código debería verse como sigue:

    USE edusys
    CREATE VIEW IF NOT EXISTS student_view AS
    SELECT ID AS id, name AS name, tot_cred AS cred
    FROM student;

    Esto crea una vista llamada student_view que selecciona las columnas ID, name y tot_cred de la tabla student y las renombra a id, name y cred respectivamente.

✨ Revisar Solución y Practicar

Actualizando la vista de estudiantes

En este paso, aprenderás cómo actualizar los datos en la vista student_view.

  1. Abra el archivo updateView.sql y agregue código al archivo para actualizar el campo name con el valor 'History' para la entrada con id '70557' en la vista student_view:

    UPDATE student_view
    SET name = 'History'
    WHERE id = '70557';

    Esto actualiza el campo name a 'History' para la fila en la vista student_view donde el id es '70557'.

  2. El código final es el siguiente:

    USE edusys
    -- Crea una tabla student_view con los campos correspondientes como se muestra en la tabla
    CREATE VIEW IF NOT EXISTS student_view AS
    SELECT ID AS id, name AS name, tot_cred AS cred
    FROM student;
    
    -- Actualiza el campo name con el valor History para la entrada con id 70557 en la vista student_view
    UPDATE student_view
    SET name = 'History'
    WHERE id = '70557';
  3. Ejecute el script SQL en la terminal de MySQL.

    SOURCE ~/project/updateView.sql
  4. Verifique la actualización seleccionando los datos de la tabla student donde el ID es '70557':

    SELECT * FROM student WHERE ID = '70557';

    La salida debe mostrar el campo name actualizado:

    +-------+---------+------+
    | id    | name    | cred |
    +-------+---------+------+
    | 70557 | History |    0 |
    +-------+---------+------+
    1 fila en el conjunto (0.001 segundos)

¡Felicitaciones! Has creado con éxito una vista de estudiantes y actualizado los datos en la vista.

✨ Revisar Solución y Practicar

Resumen

¡Felicitaciones! Has completado este proyecto. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.