1
+ CREATE TABLE DeliveryEmployees (
2
+ id int NOT NULL AUTO_INCREMENT,
3
+ name varchar (50 ),
4
+ salary decimal (10 , 2 ) NOT NULL ,
5
+ bank_acc varchar (8 ) UNIQUE NOT NULL ,
6
+ ni varchar (9 ) UNIQUE NOT NULL ,
7
+ PRIMARY KEY (ID)
8
+ );
9
+
10
+ CREATE TABLE SalesEmployees (
11
+ id int NOT NULL AUTO_INCREMENT,
12
+ name varchar (50 ),
13
+ salary decimal (10 , 2 ) NOT NULL ,
14
+ bank_acc varchar (8 ) UNIQUE NOT NULL ,
15
+ ni varchar (9 ) UNIQUE NOT NULL ,
16
+ commissionRate decimal (3 , 1 ) NOT NULL ,
17
+ PRIMARY KEY (ID)
18
+ );
19
+
20
+
21
+ CREATE TABLE Client (
22
+ id int AUTO_INCREMENT NOT NULL ,
23
+ salesEmpID int ,
24
+ PRIMARY KEY (id),
25
+ KEY ` fk_salesEmpId` (` salesEmpID` ),
26
+ CONSTRAINT ` fk_salesEmpId` FOREIGN KEY (` salesEmpID` ) REFERENCES ` SalesEmployees` (id)
27
+ );
28
+
29
+ CREATE TABLE Projects (
30
+ id int AUTO_INCREMENT,
31
+ name varchar (50 ) NOT NULL ,
32
+ value decimal (12 ,2 ),
33
+ clientID int ,
34
+ completed bool DEFAULT FALSE,
35
+ PRIMARY KEY (id),
36
+ KEY ` fk_clientid` (` clientID` ),
37
+ CONSTRAINT ` fk_clientid` FOREIGN KEY (` clientID` ) REFERENCES ` Client` (` id` )
38
+ );
39
+ CREATE TABLE EmpProject (
40
+ id int AUTO_INCREMENT NOT NULL ,
41
+ empID int NOT NULL ,
42
+ projID int NOT NULL ,
43
+ techLead bool DEFAULT FALSE,
44
+ onProject bool DEFAULT TRUE,
45
+ PRIMARY KEY (id),
46
+ Key ` fk_empid` (` empID` ),
47
+ CONSTRAINT ` fk_empid` FOREIGN KEY (` empID` ) REFERENCES ` DeliveryEmployees` (id),
48
+ Key ` fk_projid` (` projID` ),
49
+ CONSTRAINT ` fk_projid` FOREIGN KEY (` projID` ) REFERENCES ` Projects` (id)
50
+ );
0 commit comments