Настройка базы данных системы управления персоналом

SQLBeginner
Практиковаться сейчас

Введение

В этом проекте вы научитесь создавать базу данных системы управления персоналом с использованием MySQL. В базе данных будут храниться сведения о сотрудниках, их рабочих единицах и местах проживания.

👀 Предварительный просмотр

MariaDB [companySys]> DESC company;
+--------------+-------------+------+-----+---------+-------+
| Field        | Type        | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| company_name | varchar(50) | NO   | PRI | NULL    |       |
| city         | varchar(10) | YES  |     | NULL    |       |
+--------------+-------------+------+-----+---------+-------+
2 rows in set (0.001 sec)

🎯 Задачи

В этом проекте вы научитесь:

  • Как обращаться к MySQL с использованием команды sudo
  • Как создать базу данных под названием companySys
  • Как создать три таблицы: company, work и employ
  • Как установить соответствующие ограничения первичного и внешнего ключа для каждой таблицы
  • Как вставлять данные в таблицы

🏆 Достижения

После завершения этого проекта вы сможете:

  • Разобраться в основах создания и управления базой данных
  • Реализовать операции CRUD (Create, Read, Update, Delete) в реляционной базе данных
  • Устанавливать связи между таблицами с использованием первичных и внешних ключей
  • Управлять и манипулировать данными в базе данных системы управления персоналом

Доступ к MySQL и создание базы данных

В этом шаге вы научитесь обращаться к MySQL с использованием команды sudo и создавать базу данных companySys.

  1. Откройте терминал и выполните следующую команду, чтобы запустить службу MySQL:
sudo service mysql start
  1. Доступ к MySQL с использованием команды sudo:
sudo mysql
  1. Откройте файл creatComDatabase.sql.
  2. В файле creatComDatabase.sql создайте базу данных companySys с набором символов UTF-8:
CREATE DATABASE IF NOT EXISTS companySys DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  1. Используйте базу данных companySys:
USE companySys;

Создать таблицы

В этом шаге вы создадите три таблицы: company, work и employ.

  1. Откройте файл creatComDatabase.sql и создайте в нем следующие таблицы в порядке.
  2. Создайте таблицу 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. Создайте таблицу 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. Создайте таблицу 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;

Вставить данные

В этом шаге вы вставите данные в три таблицы.

  1. Откройте файл creatComDatabase.sql и продолжайте с предыдущего шага, чтобы добавить следующий sql-запрос.
  2. Вставьте данные в таблицу company:
INSERT INTO company (company_name, city) VALUES
  ('ABC Company', 'New York'),
  ('LabEx', 'London'),
  ('Company 3', 'Paris');
  1. Вставьте данные в таблицу 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. Вставьте данные в таблицу 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');

Проверить базу данных

В этом шаге вы проверите базу данных, описав таблицы.

  1. В клиенте MySQL выполните следующую команду, чтобы выполнить SQL-скрипт:
MariaDB [(none)]> SOURCE /home/labex/project/creatComDatabase.sql;
  1. Опишите таблицу company:
DESC company;
MariaDB [companySys]> DESC company;
+--------------+-------------+------+-----+---------+-------+
| Field        | Type        | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| company_name | varchar(50) | NO   | PRI | NULL    |       |
| city         | varchar(10) | YES  |     | NULL    |       |
+--------------+-------------+------+-----+---------+-------+
2 rows in set (0.001 sec)
  1. Опишите таблицу employ:
DESC employ;
MariaDB [companySys]> DESC employ;
+-------------+--------------+------+-----+---------+-------+
| Field       | Type         | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+-------+
| id          | int(11)      | NO   | PRI | NULL    |       |
| person_name | varchar(10)  | YES  | MUL | NULL    |       |
| street      | varchar(100) | YES  |     | NULL    |       |
| city        | varchar(10)  | YES  |     | NULL    |       |
+-------------+--------------+------+-----+---------+-------+
4 rows in set (0.001 sec)
  1. Опишите таблицу work:
DESC work;
MariaDB [companySys]> DESC work;
+--------------+---------------+------+-----+---------+-------+
| Field        | Type          | Null | Key | Default | Extra |
+--------------+---------------+------+-----+---------+-------+
| per_name     | varchar(10)   | NO   | PRI | NULL    |       |
| company_name | varchar(50)   | YES  | MUL | NULL    |       |
| salary       | decimal(10,2) | YES  |     | NULL    |       |
+--------------+---------------+------+-----+---------+-------+
3 rows in set (0.001 sec)

Вы успешно создали базу данных системы управления персоналом и вставили в нее данные. Поздравляем!

Резюме

Поздравляем! Вы завершили этот проект. Вы можете практиковаться в более многих лабораторных работах в LabEx, чтобы улучшить свои навыки.

✨ Проверить решение и практиковаться✨ Проверить решение и практиковаться✨ Проверить решение и практиковаться✨ Проверить решение и практиковаться