-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathProjetAndroid2024.sql
76 lines (70 loc) · 3.24 KB
/
ProjetAndroid2024.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
CREATE TABLE `Candidate` (
`id` INT PRIMARY KEY AUTO_INCREMENT,
`name` VARCHAR(255), -- Longueur spécifiée
`first_name` VARCHAR(255), -- Longueur spécifiée
`nationality` VARCHAR(255), -- Longueur spécifiée
`birth_date` DATE,
`phone` VARCHAR(255), -- Longueur spécifiée
`email` VARCHAR(255), -- Longueur spécifiée
`city` VARCHAR(255), -- Longueur spécifiée
`CV_Link` VARCHAR(255),
`comments` TEXT,
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- Valeur par défaut ajoutée
`updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, -- Valeur par défaut ajoutée
`password_hash` VARCHAR(255) -- Longueur spécifiée
);
CREATE TABLE `Employer` (
`id` INT PRIMARY KEY AUTO_INCREMENT,
`phone` VARCHAR(255), -- Longueur spécifiée
`email` VARCHAR(255), -- Longueur spécifiée
`cp` VARCHAR(255), -- Longueur spécifiée
`address` VARCHAR(255), -- Longueur spécifiée
`city` VARCHAR(255), -- Longueur spécifiée
`company_name` VARCHAR(255), -- Longueur spécifiée
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- Valeur par défaut ajoutée
`updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, -- Valeur par défaut ajoutée
`password_hash` VARCHAR(255) -- Longueur spécifiée
);
CREATE TABLE `public_links` (
`id` INT PRIMARY KEY AUTO_INCREMENT,
`employer_id` INT,
`link` VARCHAR(255)
);
CREATE TABLE `job_offers` (
`id` INT PRIMARY KEY AUTO_INCREMENT,
`employer_id` INT,
`title` VARCHAR(255), -- Longueur spécifiée
`description` TEXT,
`target_job` VARCHAR(255), -- Longueur spécifiée
`period` VARCHAR(255), -- Longueur spécifiée
`remuneration` DECIMAL(10,2), -- Précision spécifiée
`location` VARCHAR(255), -- Longueur spécifiée
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- Valeur par défaut ajoutée
`updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, -- Valeur par défaut ajoutée
`status` VARCHAR(255) -- Longueur spécifiée
);
CREATE TABLE `applications` (
`id` INT PRIMARY KEY AUTO_INCREMENT,
`candidate_id` INT,
`job_offer_id` INT,
`application_date` DATE,
`motivation_letter_link` VARCHAR(255),
`status` VARCHAR(255), -- Longueur spécifiée
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- Valeur par défaut ajoutée
`updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP -- Valeur par défaut ajoutée
);
CREATE TABLE `feedbacks` (
`id` INT PRIMARY KEY AUTO_INCREMENT,
`application_id` INT,
`employeur_id` INT,
`candidat_id` INT,
`comment` TEXT,
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP -- Valeur par défaut ajoutée
);
ALTER TABLE `public_links` ADD FOREIGN KEY (`employer_id`) REFERENCES `Employer` (`id`);
ALTER TABLE `job_offers` ADD FOREIGN KEY (`employer_id`) REFERENCES `Employer` (`id`);
ALTER TABLE `applications` ADD FOREIGN KEY (`candidate_id`) REFERENCES `Candidate` (`id`);
ALTER TABLE `applications` ADD FOREIGN KEY (`job_offer_id`) REFERENCES `job_offers` (`id`);
ALTER TABLE `feedbacks` ADD FOREIGN KEY (`application_id`) REFERENCES `applications` (`id`);
ALTER TABLE `feedbacks` ADD FOREIGN KEY (`employeur_id`) REFERENCES `Employer` (`id`);
ALTER TABLE `feedbacks` ADD FOREIGN KEY (`candidat_id`) REFERENCES `Candidate` (`id`);