В этом задании вам предстоит спроектировать и создать таблицу employee_contacts в PostgreSQL для хранения контактных данных сотрудников, обеспечивая целостность данных с помощью соответствующих типов данных и ограничений (constraints). Вы будете работать в предварительно настроенной среде, где уже существует таблица employees.
Ваша задача состоит в том, чтобы подключиться к базе данных PostgreSQL как пользователь postgres с помощью psql, а затем выполнить SQL-команды непосредственно для создания таблицы employee_contacts. Таблица должна включать столбцы contact_id (первичный ключ, автоинкрементный), employee_id (внешний ключ, ссылающийся на таблицу employees), phone_number (уникальный) и email (не null).
Skills Graph
%%%%{init: {'theme':'neutral'}}%%%%
flowchart RL
postgresql(("PostgreSQL")) -.-> postgresql/PostgreSQLGroup(["PostgreSQL"])
postgresql/PostgreSQLGroup -.-> postgresql/table_init("Create Basic Table")
postgresql/PostgreSQLGroup -.-> postgresql/col_text("Add Text Column")
postgresql/PostgreSQLGroup -.-> postgresql/key_primary("Set Primary Key")
subgraph Lab Skills
postgresql/table_init -.-> lab-551115{{"Создание таблицы сотрудников в PostgreSQL"}}
postgresql/col_text -.-> lab-551115{{"Создание таблицы сотрудников в PostgreSQL"}}
postgresql/key_primary -.-> lab-551115{{"Создание таблицы сотрудников в PostgreSQL"}}
end
Создание таблицы сотрудников
Разработайте таблицу для хранения контактных данных сотрудников, обеспечивая целостность данных с помощью соответствующих типов данных и ограничений (constraints).
Таблица 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 должен быть автоинкрементным первичным ключом.
Столбец phone_number должен быть уникальным.
Столбец email не должен допускать значения NULL.
Столбец employee_id должен быть внешним ключом, ссылающимся на таблицу employees.
Выполните SQL-команды с помощью psql.
Примеры
Таблицы employees и employee_contacts должны иметь следующую структуру:
Используйте оператор CREATE TABLE для создания таблицы.
Используйте тип данных SERIAL для столбца contact_id, чтобы автоматически генерировать уникальные целочисленные значения.
Используйте ограничение (constraint) PRIMARY KEY для определения первичного ключа.
Используйте ограничение (constraint) UNIQUE для обеспечения того, чтобы столбец phone_number содержал уникальные значения.
Используйте ограничение (constraint) NOT NULL для обеспечения того, чтобы столбец email не содержал значения NULL.
Используйте ограничение (constraint) 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 (не null).
Решение требует подключения к базе данных PostgreSQL как пользователь postgres с помощью psql, а затем выполнения необходимых SQL-команд непосредственно для определения таблицы и ее ограничений (constraints), обеспечивая целостность данных и правильные связи между таблицами.