Modificar la clave primaria de la tabla Countrylanguage

MySQLBeginner
Practicar Ahora

Introducción

En este proyecto, aprenderás cómo modificar la clave primaria de la tabla countrylanguage en una base de datos MySQL. La clave primaria inicial se basaba solo en la columna CountryCode, pero para una mejor organización, crearás una clave primaria compuesta utilizando las columnas CountryCode y Language.

👀 Vista previa

MariaDB [world]> DESC countrylanguage;
+-------------+---------------+------+-----+---------+-------+
| Campo       | Tipo          | Nulo | Clave | Predeterminado | Extra |
+-------------+---------------+------+-----+---------+-------+
| CountryCode | char(3)       | NO   | PRI |         |       |
| Idioma      | char(30)      | NO   | PRI |         |       |
| EsOficial   | enum('T','F') | NO   |     | F       |       |
| Porcentaje  | decimal(4,1)  | NO   |     | 0.0     |       |
+-------------+---------------+------+-----+---------+-------+
4 filas en set (0.001 segundos)

🎯 Tareas

En este proyecto, aprenderás:

  • Cómo acceder a MySQL utilizando el comando sudo sin contraseña
  • Cómo importar datos de un archivo SQL en una base de datos MySQL
  • Cómo modificar la clave primaria de una tabla a una clave compuesta

🏆 Logros

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

  • Comprender la importancia de utilizar una clave primaria compuesta para una mejor organización de datos
  • Modificar con confianza la estructura de la clave primaria de una tabla MySQL
  • Aplicar tus conocimientos de instrucciones SQL para lograr las modificaciones deseadas en la base de datos

Acceder a MySQL e Importar los Datos

En este paso, aprenderás cómo acceder a MySQL utilizando el comando sudo sin ninguna contraseña e importar los datos de /home/labex/project/world.sql en MySQL.

  1. Abra una terminal y ejecute el siguiente comando para iniciar el servicio MySQL:
sudo service mysql start
  1. Acceda a MySQL utilizando el comando sudo sin ninguna contraseña:
sudo mysql
  1. Importe los datos de /home/labex/project/world.sql en MySQL y cambie a la base de datos world:
MariaDB [(none)]> SOURCE /home/labex/project/world.sql;

Modificar la clave primaria

En este paso, aprenderás cómo modificar la clave primaria de la tabla countrylanguage a una clave compuesta formada por CountryCode y Language.

  1. Abra el archivo changePri.sql.
  2. Agregue las siguientes instrucciones SQL al archivo changePri.sql:
-- Eliminar la restricción de clave primaria original
ALTER TABLE countrylanguage DROP PRIMARY KEY;

-- Agregar las restricciones de clave primaria compuesta
ALTER TABLE countrylanguage ADD PRIMARY KEY (CountryCode, Language);
  1. Guarde el archivo changePri.sql.
  2. Ejecute el script changePri.sql en MySQL:
MariaDB [world]> SOURCE /home/labex/project/changePri.sql;
  1. Verifique los cambios en la tabla countrylanguage:
MariaDB [world]> DESC countrylanguage;

La salida ahora debe mostrar la clave primaria compuesta formada por CountryCode y Language.

+-------------+---------------+------+-----+---------+-------+
| Campo       | Tipo          | Nulo | Clave | Predeterminado | Extra |
+-------------+---------------+------+-----+---------+-------+
| CountryCode | char(3)       | NO   | PRI |         |       |
| Idioma      | char(30)      | NO   | PRI |         |       |
| EsOficial   | enum('T','F') | NO   |     | F       |       |
| Porcentaje  | decimal(4,1)  | NO   |     | 0.0     |       |
+-------------+---------------+------+-----+---------+-------+
4 filas en set (0.001 segundos)

Resumen

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

✨ Revisar Solución y Practicar✨ Revisar Solución y Practicar