В этом испытании вам предстоит спроектировать и создать таблицу employee_contacts в PostgreSQL для хранения контактных данных сотрудников. Важной задачей является обеспечение целостности данных путем выбора правильных типов данных и установки необходимых ограничений. Работа будет проходить в подготовленной среде, где уже имеется таблица employees.
Ваша задача заключается в подключении к базе данных PostgreSQL от имени пользователя postgres с помощью утилиты psql и выполнении SQL-команд для создания таблицы employee_contacts. Таблица должна содержать столбцы contact_id (первичный ключ с автоинкрементом), employee_id (внешний ключ, ссылающийся на таблицу employees), phone_number (уникальное значение) и email (обязательное поле, не допускающее пустых значений).
Создание таблицы сотрудников
Спроектируйте таблицу для хранения контактных данных сотрудников, обеспечив надежность данных с помощью корректных типов и ограничений.
Таблица employees уже создана для вас. Если вы её не обнаружили, вы можете создать её самостоятельно, используя следующую команду:
CREATE TABLE employees (
employee_id SERIAL PRIMARY KEY,
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL
);
Задачи
Создайте таблицу с именем employee_contacts в PostgreSQL. Таблица должна включать столбцы: contact_id (первичный ключ), employee_id (внешний ключ, ссылающийся на таблицу employees), phone_number (уникальный) и email (не может быть NULL).
Убедитесь, что столбец employee_id корректно ссылается на столбец employee_id в таблице employees.
Требования
Столбец contact_id должен быть первичным ключом с автоматическим приращением (auto-incrementing).
Столбец phone_number должен содержать только уникальные значения.
Столбец email не должен допускать значений NULL.
Столбец employee_id должен быть внешним ключом (foreign key), ссылающимся на таблицу employees.
Выполните SQL-команды через интерфейс psql.
Примеры
Таблицы employees и employee_contacts должны иметь следующую структуру:
Используйте оператор CREATE TABLE для создания таблицы.
Используйте тип данных SERIAL для столбца contact_id, чтобы автоматически генерировать уникальные целочисленные значения.
Используйте ограничение PRIMARY KEY для определения первичного ключа.
Используйте ограничение UNIQUE, чтобы гарантировать уникальность данных в столбце phone_number.
Используйте ограничение NOT NULL, чтобы запретить пустые значения в столбце email.
Используйте ограничение FOREIGN KEY для установления связи между столбцом employee_id в таблице employee_contacts и столбцом employee_id в таблице employees.
Не забудьте подключиться к базе данных PostgreSQL с помощью команды sudo -u postgres psql перед выполнением SQL-запросов.
В этом испытании вы научились создавать таблицу PostgreSQL под названием employee_contacts в заданной среде. Процесс включал проектирование структуры таблицы со столбцами contact_id (первичный ключ, автоинкремент), employee_id (внешний ключ к таблице employees), phone_number (уникальность) и email (обязательность заполнения).
Для решения задачи потребовалось подключиться к базе данных PostgreSQL под пользователем postgres через psql и выполнить SQL-команды для настройки таблицы и её ограничений, что обеспечило целостность данных и правильные связи между таблицами.