7 TH

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 21

Arab Academy for Science, Technology & Maritime Transport

College of Artificial Intelligence ━━━━━ Alamein Campus


Course DS211 Database Systems 1st 21/22
Lecturer Prof. Dr. Hicham ElMongui
Teaching Assistant Nagy Khairat Aly Alia El-Hefny

Company Database

Miral Elnakib
Reg_N0: 20102753

1|Page
Table Of Contents:

1) Idea----------------------------------------------------------------3

2) ER-Diagram------------------------------------------------------3

3) Company database Tables-------------------------------------4,5,6

4) Codes:

4.1) Creation and Insertion-----------------------------------7,8,9,10

4.2) Selection--------------------------------------------------11,12,13

4.3) Deletion---------------------------------------------------14,15,16

4.4) Update------------------------------------------------------ 17,18,19

2|Page
1) Idea:
A Company That has several departments. Departments are identified by a name, id. Each
department Control a number of projects. Employees are identified by name, id, Salary,
Gender. An employee works in only one department but can work on several project. Many
Employees work with many clients. Each employee has dependent. Dependent are
identified by name, gender, relationship and birth date.

2) ER-Diagram:

3|Page
2)Company Database Tables:

Employee

ID First_Name Last_Name Sex Salary Department_ID


20102753 Ahmed Elhenawy Male 5000 1
20102754 Omar Mabrouk Male 6000 2
20102755 Hager Mohamed Female 7000 3
20102756 Alaa Allam Female 8000 4
20102757 Eayd Elnakib Male 9000 5

Department

ID Name
1 Software
2 Hardware
3 Sales
4 Human Recourse
5 Research and Development

Dependent

Name Birth_Date Sex Relationship Employee_ID


Hania 11/5/2001 Female Daughter 20102753
Rahaf 11/5/2000 Female Daughter 20102757
Riham 22/12/2001 Female Daughter 20102753
Shazly 9/9/2000 Male Son 20102756
Tamer 10/4/2004 Male Son 20102755

4|Page
Project

ID Name Location Department_ID


300 Voice translation app Alexandria 1
301 Call recording app Alexandria 2
302 Robotic Arm Cairo 3
303 Drone Cairo 4
304 Alpha_Robot Alamien 5

Client

ID Name
400 Khaled
401 Mazin
402 Nervana
403 Salma
404 Nada

Works_With (Relationship between employee and client)

Employee_ID Client_ID
20102753 400
20102754 400
20102755 401
20102756 402
20102757 403

Employee_ID Project_ID
20102753 300

5|Page
20102754 301
20102755 302
20102756 303
20102757 304
Work_On (Relationship between employee and project)

4) Codes:

6|Page
4.1) Creation and Insertion:

Employee Table:
CREATE TABLE `Employee`
(
ID INT,
Frist_Name VARCHAR (40),
Last_Name VARCHAR (40),
SEX VARCHAR (40),
Salary INT,
Department_ID INT,
PRIMARY KEY(ID),
FOREIGN KEY (Department_ID) REFERENCES Department (ID)
);

INSERT INTO `Employee` VALUES


(20102753,"Ahmed","Elhenawy","Male",5000,1);
INSERT INTO `Employee` VALUES
(20102754,"Omar","Mabrouk","Male",6000,2);
INSERT INTO `Employee` VALUES
(20102755,"Hager","Mohamed","Female",7000,3);
INSERT INTO `Employee` VALUES
(20102756,"Alaa","Allam","Female",8000,4);
INSERT INTO `Employee` VALUES
(20102757,"Eyad","Elnakib","Male",9000,5);

7|Page
Dependent Table:

CREATE TABLE `Dependent`


(
Name VARCHAR (40),
Birth_Date Date,
SEX VARCHAR (40),
Relationship VARCHAR (40),
Employee_ID INT,
PRIMARY KEY(Name),
FOREIGN KEY (Employee_ID) REFERENCES Employee(ID)
);
INSERT INTO `Dependent` (`Name`, `Birth_Date`, `SEX`,
`Relationship`, `Employee_ID`) VALUES ("Hania","2001-05-
11","Female","Daughter",20102753);
INSERT INTO `Dependent` (`Name`, `Birth_Date`, `SEX`,
`Relationship`, `Employee_ID`) VALUES ("Rhiam","2003-06-
12","Female","Daughter",20102754);
INSERT INTO `Dependent` (`Name`, `Birth_Date`, `SEX`,
`Relationship`, `Employee_ID`) VALUES ("Tamer","2004-04-
10","Male","Son",20102755);
INSERT INTO `Dependent` (`Name`, `Birth_Date`, `SEX`,
`Relationship`, `Employee_ID`) VALUES ("Shazly","2000-09-
9","Male","Son",20102756);
INSERT INTO `Dependent` (`Name`, `Birth_Date`, `SEX`,
`Relationship`, `Employee_ID`) VALUES ("Rahaf","2000-05-
11","Female","Daughter",20102757);

8|Page
Department Table:

CREATE TABLE `Department`


(
ID INT,
Name VARCHAR (40),
PRIMARY KEY(ID)
);
INSERT INTO `Department` VALUES
(1,"Software");
INSERT INTO `Department` VALUES (2,"Hardware");
INSERT INTO `Department` VALUES (3,"Sales");
INSERT INTO `Department` VALUES (4,"Human Recourse");
INSERT INTO `Department` VALUES (5,"Research and Development");

Client Table:

CREATE TABLE `Client`

ID INT,

Name VARCHAR (40),

PRIMARY KEY(ID),

);

INSERT INTO `Client` (`ID`, `Name`) VALUES (400,"Khaled");

INSERT INTO `Client` (`ID`, `Name`) VALUES (401,"Mazin");

INSERT INTO `Client` (`ID`, `Name`) VALUES (402,"Nervana");

INSERT INTO `Client` (`ID`, `Name`) VALUES (403,"Salma");

INSERT INTO `Client` (`ID`, `Name`) VALUES (404,"Nada");

9|Page
Works_With Table:
CREATE TABLE `Work_With`
(
Client_ID INT,
Employee_ID INT,
PRIMARY KEY (Client_ID, Employee_ID),
FOREIGN KEY (Employee_ID) REFERENCES Employee (ID),
FOREIGN KEY (Client_ID) REFERENCES Client (ID)
);

INSERT INTO `Works_With` (`Client_ID`, `Employee_ID`) VALUES


(400,20102753);
INSERT INTO `Works_With` (`Client_ID`, `Employee_ID`) VALUES
(401,20102754);
INSERT INTO `Works_With` (`Client_ID`, `Employee_ID`) VALUES
(402,20102755);
INSERT INTO `Works_With` (`Client_ID`, `Employee_ID`) VALUES
(403,20102756);
INSERT INTO `Works_With` (`Client_ID`, `Employee_ID`) VALUES
(404,20102757);

10 | P a g e
Work_On Table:

CREATE TABLE `Work_On`

Employee_ID INT,

Project_ID INT,

PRIMARY KEY (Employee_ID, Project_ID),

FOREIGN KEY (Employee_ID) REFERENCES Employee (ID),

FOREIGN KEY (Project_ID) REFERENCES Project (ID)

);

INSERT INTO `Work_On` (`Employee_ID`, `Project_ID`) VALUES


(20102753,300);

INSERT INTO `Work_On` (`Employee_ID`, `Project_ID`) VALUES


(20102754,301);

INSERT INTO `Work_On` (`Employee_ID`, `Project_ID`) VALUES


(20102755,302);

INSERT INTO `Work_On` (`Employee_ID`, `Project_ID`) VALUES


(20102756,303);

INSERT INTO `Work_On` (`Employee_ID`, `Project_ID`) VALUES


(20102757,304);

11 | P a g e
Project Table:

CREATE TABLE `Project`

ID INT,

Name VARCHAR (40),

Location VARCHAR (100),

Department_ID INT,

PRIMARY KEY(ID),

FOREIGN KEY(Department_ID) REFERENCES Department (ID)

);

INSERT INTO `Project` VALUES (300,"Voice translation


app","Alexandria",1);

INSERT INTO `Project` VALUES (301,"Call recording


app","Alexandria",2);

INSERT INTO `Project` VALUES (302,"Robotic Arm","Cairo",3);

INSERT INTO `Project` VALUES (303,"Drone","Cairo",4);

INSERT INTO `Project` VALUES (302,"Alpha_Robot","Alamien",5);

12 | P a g e
4.2) Selection:
SELECT * FROM `Department` WHERE ID=1;

Before
After

SELECT * FROM `Project` WHERE Name LIKE "D%";

Before

After

13 | P a g e
SELECT * FROM `Client` WHERE ID>402;

Before

After

SELECT * FROM `Dependent` WHERE Sex=” Female”;

Before

After

14 | P a g e
select
EMP.ID,
EMP.Frist_Name,
DEP.Name
FROM
`Employee` EMP,
`Department` DEP
WHERE
EMP.Department_ID = DEP.ID;

select
PRO.ID,
PRO.Name,
DEP.Name
FROM
`Project` PRO,
`Department` DEP
WHERE
PRO.Department_ID = DEP.ID;

select
EMP.ID,
EMP.Last_Name,
DEP.Relationship
FROM
`Employee` EMP,
`Dependent` DEP
WHERE

15 | P a g e
DEP.Employee_ID =EMP.ID;

4.3) Deletion:
DELETE FROM `Client ` WHERE ID=400;

Before
After

DELET FROM `Dependent` WHERE Name="Hania";

Before

After

16 | P a g e
DELET FROM `Work_On ` WHERE ID=300;

Before After

DELET FROM `Project ` WHERE ID=300;

Before

After

17 | P a g e
DELETE FROM Works_With` WHERE Client_ID = 400 AND Employee_ID
= 20102753;

Before After

18 | P a g e
4.4) Update:
UPDATE `Client` SET Name="Ahmed" WHERE ID=400;

Before
After

UPDATE `Department ` SET

Before

After

19 | P a g e
UPDATE `Employee ` SET Salary =1000 WHERE ID =20102754;

Before

After

UPDATE `Project` SET Location=" Alamien" WHERE Name="Voice


translation app";

Before

After

20 | P a g e
UPDATE `Dependent` SET Birth_Date="2001-10-10" WHERE
Name="Shazly";

Before

After

21 | P a g e

You might also like