Dans ce défi, vous allez concevoir et créer une table employee_contacts dans PostgreSQL afin de stocker les coordonnées des employés. L'objectif est de garantir l'intégrité des données en utilisant les types de données et les contraintes adéquats. Vous évoluerez dans un environnement où la table employees est déjà présente.
Votre mission consiste à vous connecter à la base de données PostgreSQL en tant qu'utilisateur postgres via l'outil psql, puis à exécuter les commandes SQL nécessaires pour générer la table employee_contacts. Cette table doit comporter les colonnes contact_id (clé primaire, auto-incrémentée), employee_id (clé étrangère référençant la table employees), phone_number (unique) et email (non nul).
Créer la table des employés
Concevez une table pour stocker les coordonnées des employés, en veillant à l'intégrité des données par le choix judicieux des types et des contraintes.
La table employees a été créée pour vous. Si elle n'apparaît pas, vous pouvez la générer à l'aide de la commande suivante :
CREATE TABLE employees (
employee_id SERIAL PRIMARY KEY,
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL
);
Tâches
Créer une table nommée employee_contacts dans PostgreSQL. La table doit inclure les colonnes contact_id (clé primaire), employee_id (clé étrangère référençant la table employees), phone_number (unique) et email (non nul).
S'assurer que la colonne employee_id référence correctement la colonne employee_id de la table employees.
Exigences
La colonne contact_id doit être une clé primaire auto-incrémentée.
La colonne phone_number doit être unique.
La colonne email ne doit pas autoriser de valeurs NULL.
La colonne employee_id doit être une clé étrangère pointant vers la table employees.
Exécuter les commandes SQL via psql.
Exemples
Les tables employees et employee_contacts doivent présenter la structure suivante :
Dans ce défi, l'objectif était de créer une table PostgreSQL nommée employee_contacts dans un environnement spécifique. Cela impliquait la conception d'une structure de table incluant un contact_id (clé primaire auto-incrémentée), un employee_id (clé étrangère liée à la table employees), un phone_number (unique) et un email (obligatoire).
La solution a nécessité une connexion à PostgreSQL via psql sous l'identité de l'utilisateur postgres, suivie de l'exécution des commandes SQL pour définir la table et ses contraintes, assurant ainsi la cohérence des données et les relations entre les tables.