Configuración de la base de datos del sistema de gestión de personal

SQLBeginner
Practicar Ahora

Introducción

En este proyecto, aprenderás a crear una base de datos de sistema de gestión de personal utilizando MySQL. La base de datos almacenará información sobre empleados, sus unidades de trabajo y detalles residenciales.

👀 Vista previa

MariaDB [companySys]> DESC company;
+--------------+-------------+------+-----+---------+-------+
| Campo        | Tipo        | Nulo | Clave | Predeterminado | Extra |
+--------------+-------------+------+-----+---------+-------+
| nombre_empresa | varchar(50) | NO   | PRI | NULL    |       |
| ciudad       | varchar(10) | YES  |     | NULL    |       |
+--------------+-------------+------+-----+---------+-------+
2 filas en el conjunto (0,001 segundos)

🎯 Tareas

En este proyecto, aprenderás:

  • Cómo acceder a MySQL utilizando el comando sudo
  • Cómo crear una base de datos llamada companySys
  • Cómo crear tres tablas: company, work y employ
  • Cómo establecer las restricciones adecuadas de clave primaria y clave externa para cada tabla
  • Cómo insertar datos en las tablas

🏆 Logros

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

  • Comprender los conceptos básicos de creación y gestión de bases de datos
  • Implementar operaciones CRUD (Crear, Leer, Actualizar, Eliminar) en una base de datos relacional
  • Establecer relaciones entre tablas utilizando claves primarias y claves externas
  • Administrar y manipular datos en una base de datos de sistema de gestión de personal

Acceder a MySQL y crear la base de datos

En este paso, aprenderás a acceder a MySQL utilizando el comando sudo y a crear la base de datos companySys.

  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:
sudo mysql
  1. Abra el archivo creatComDatabase.sql.
  2. En el archivo creatComDatabase.sql, cree la base de datos companySys con el conjunto de caracteres UTF-8:
CREATE DATABASE IF NOT EXISTS companySys DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  1. Utilice la base de datos companySys:
USE companySys;
✨ Revisar Solución y Practicar

Crear las tablas

En este paso, crearás las tres tablas: company, work y employ.

  1. Abre el archivo creatComDatabase.sql y crea las siguientes tablas en el archivo en orden.
  2. Crea la tabla company:
CREATE TABLE IF NOT EXISTS company (
  company_name varchar(50) NOT NULL,
  city varchar(10),
  PRIMARY KEY (company_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
  1. Crea la tabla work:
CREATE TABLE IF NOT EXISTS work (
  per_name varchar(10) NOT NULL,
  company_name varchar(50),
  salary decimal(10,2),
  PRIMARY KEY (per_name),
  FOREIGN KEY (company_name) REFERENCES company(company_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
  1. Crea la tabla employ:
CREATE TABLE IF NOT EXISTS employ (
  id int NOT NULL,
  person_name varchar(10),
  street varchar(100),
  city varchar(10),
  PRIMARY KEY (id),
  FOREIGN KEY (person_name) REFERENCES work(per_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
✨ Revisar Solución y Practicar

Insertar los datos

En este paso, insertarás los datos en las tres tablas.

  1. Abre el archivo creatComDatabase.sql y continúa desde el paso anterior para agregar la siguiente instrucción sql.
  2. Inserta datos en la tabla company:
INSERT INTO company (company_name, city) VALUES
  ('ABC Company', 'New York'),
  ('LabEx', 'London'),
  ('Company 3', 'Paris');
  1. Inserta datos en la tabla work:
INSERT INTO work (per_name, company_name, salary) VALUES
  ('John', 'ABC Company', 5000.00),
  ('Jane', 'LabEx', 6000.00),
  ('Mary', 'Company 3', 5500.00);
  1. Inserta datos en la tabla employ:
INSERT INTO employ (id, person_name, street, city) VALUES
  (1, 'John', '123 Main Street', 'New York'),
  (2, 'Jane', '456 Park Avenue', 'London'),
  (3, 'Mary', '789 Broadway', 'Paris');
✨ Revisar Solución y Practicar

Verificar la base de datos

En este paso, verificaras la base de datos describiendo las tablas.

  1. En el cliente MySQL, ejecuta el siguiente comando para ejecutar el script SQL:
MariaDB [(none)]> SOURCE /home/labex/project/creatComDatabase.sql;
  1. Describe la tabla company:
DESC company;
MariaDB [companySys]> DESC company;
+--------------+-------------+------+-----+---------+-------+
| Campo        | Tipo        | Nulo | Clave | Predeterminado | Extra |
+--------------+-------------+------+-----+---------+-------+
| nombre_empresa | varchar(50) | NO   | PRI | NULL    |       |
| ciudad       | varchar(10) | YES  |     | NULL    |       |
+--------------+-------------+------+-----+---------+-------+
2 filas en el conjunto (0,001 segundos)
  1. Describe la tabla employ:
DESC employ;
MariaDB [companySys]> DESC employ;
+-------------+--------------+------+-----+---------+-------+
| Campo       | Tipo         | Nulo | Clave | Predeterminado | Extra |
+-------------+--------------+------+-----+---------+-------+
| id          | int(11)      | NO   | PRI | NULL    |       |
| nombre_persona | varchar(10)  | YES  | MUL | NULL    |       |
| calle       | varchar(100) | YES  |     | NULL    |       |
| ciudad       | varchar(10)  | YES  |     | NULL    |       |
+-------------+--------------+------+-----+---------+-------+
4 filas en el conjunto (0,001 segundos)
  1. Describe la tabla work:
DESC work;
MariaDB [companySys]> DESC work;
+--------------+---------------+------+-----+---------+-------+
| Campo        | Tipo          | Nulo | Clave | Predeterminado | Extra |
+--------------+---------------+------+-----+---------+-------+
| nombre_persona | varchar(10)   | NO   | PRI | NULL    |       |
| nombre_empresa | varchar(50)   | YES  | MUL | NULL    |       |
| salario       | decimal(10,2) | YES  |     | NULL    |       |
+--------------+---------------+------+-----+---------+-------+
3 filas en el conjunto (0,001 segundos)

¡Has creado con éxito la base de datos del sistema de gestión de personal e insertado los datos! ¡Felicidades!

✨ Revisar Solución y Practicar

Resumen

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