0% found this document useful (0 votes)
177 views

SQL Company

The document contains SQL statements that create tables to model an employee database including tables for employees, departments, projects, works on assignments, and dependents. Data is inserted into the tables to populate the database.

Uploaded by

eric_76
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
177 views

SQL Company

The document contains SQL statements that create tables to model an employee database including tables for employees, departments, projects, works on assignments, and dependents. Data is inserted into the tables to populate the database.

Uploaded by

eric_76
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 4

CREATE TABLE EMPLOYEE

(
Fname VARCHAR(15) NOT NULL,
Minit CHAR,
Lname VARCHAR(15) NOT NULL,
Ssn CHAR(9) NOT NULL,
Bdate DATE,
Address VARCHAR(30),
Sex CHAR,
Salary DECIMAL(10,2),
Superssn CHAR(9),
Dno INT NOT NULL,
PRIMARY KEY (Ssn),
FOREIGN KEY(Superssn) REFERENCES EMPLOYEE(Ssn));

CREATE TABLE DEPARTMENT (


Dnumber INT NOT NULL,
Dname VARCHAR(50) NOT NULL,
Mgrssn CHAR(9),
Mgrstartdate DATE,
PRIMARY KEY(Dnumber),
UNIQUE(Dname),
FOREIGN KEY(Mgrssn) REFERENCES EMPLOYEE(Ssn));

CREATE TABLE DEPT_LOCATIONS (


Dnumber INT NOT NULL,
Dlocation VARCHAR2(15) NOT NULL,
PRIMARY KEY(Dnumber, Dlocation),
FOREIGN KEY(Dnumber) REFERENCES DEPARTMENT(Dnumber));

CREATE TABLE PROJECT (


Pname VARCHAR2(15) NOT NULL,
Pnumber INT NOT NULL,
Plocation VARCHAR2(15) NOT NULL,
Dnum INT NOT NULL,
PRIMARY KEY(Pnumber),
UNIQUE(Pname),
FOREIGN KEY(Dnum) REFERENCES DEPARTMENT(Dnumber));

CREATE TABLE WORKS_ON (


Essn CHAR(9) NOT NULL,
Pno INT NOT NULL,
Hours DECIMAL(3,1),
PRIMARY KEY(Essn, Pno),
FOREIGN KEY(Essn) REFERENCES EMPLOYEE(Ssn),
FOREIGN KEY(Pno) REFERENCES PROJECT(Pnumber));
CREATE TABLE DEPENDENT (
Essn CHAR(9) NOT NULL,
Dependent_name VARCHAR2(15) NOT NULL,
Sex CHAR,
Bdate DATE,
Relationship VARCHAR(8),
PRIMARY KEY(Essn, Dependent_name),
FOREIGN KEY(Essn) REFERENCES EMPLOYEE(Ssn));

ALTER TABLE Employee


ADD FOREIGN KEY(Dno) REFERENCES Department(Dnumber);

-- Department
Insert into Department values(5, 'Research', null, TO_DATE('1988-05-22','YYYY-
MM-DD'));
Insert into Department values(4, 'Administration', null, TO_DATE('1998-01-
01','YYYY-MM-DD'));
Insert into Department values(1, 'Headquarters', null, TO_DATE('1981-06-
19','YYYY-MM-DD'));

-- Employee
Insert into Employee values('John', 'B', 'Smith', '123456789', TO_DATE('1965-01-
09','YYYY-MM-DD'), '731 Fondren, Houston, TX', 'M', 30000, null, 5);
Insert into Employee values('Franklin', 'T', 'Wong', '333445555', TO_DATE('1955-12-
08','YYYY-MM-DD'), '638 Voss, Houston, TX', 'M', 40000, null, 5);
Insert into Employee values('Alicia', 'J', 'Zelaya', '999887777', TO_DATE('1968-07-
19','YYYY-MM-DD'), '3321 Castle, Spring, TX', 'F', 25000, null, 4);
Insert into Employee values('Jennifer', 'S', 'Wallace', '987654321', TO_DATE('1941-06-
20','YYYY-MM-DD'), '291 Berry, Bellaire, TX', 'F', 43000, null, 4);
Insert into Employee values('Ramesh', 'K', 'Narayan', '666884444', TO_DATE('1962-
09-15','YYYY-MM-DD'), '975 Fire Oak, Humble, TX', 'M', 38000, null, 5);
Insert into Employee values('Joyce', 'A', 'English', '453453453', TO_DATE('1972-07-
31','YYYY-MM-DD'), '5631 Rice, Houston, TX', 'F', 25000, null, 5);
Insert into Employee values('Ahmad', 'V', 'Jabbar', '987987987', TO_DATE('1969-03-
29','YYYY-MM-DD'), '980 Dallas, Houston, TX', 'M', 25000, null, 4);
Insert into Employee values('James', 'E', 'Borg', '888665555', TO_DATE('1937-11-
10','YYYY-MM-DD'), '450 Stone, Houston, TX', 'M', 55000, null, 1);

-- Update Department
Update Department set Mgrssn ='333445555' where Dnumber = 5;
Update Department set Mgrssn ='987654321' where Dnumber = 4;
Update Department set Mgrssn ='888665555' where Dnumber = 1;
-- Update Employee
Update Employee set Superssn = '333445555' where SSN = '123456789';
Update Employee set Superssn = '888665555' where SSN = '333445555';
Update Employee set Superssn = '987654321' where SSN = '999887777';
Update Employee set Superssn = '888665555' where SSN = '987654321';
Update Employee set Superssn = '333445555' where SSN = '666884444';
Update Employee set Superssn = '333445555' where SSN = '453453453';
Update Employee set Superssn = '987654321' where SSN = '987987987';

-- Dept_Locations
Insert into Dept_Locations values(1, 'Houston');
Insert into Dept_Locations values(4, 'Stafford');
Insert into Dept_Locations values(5, 'Bellaire');
Insert into Dept_Locations values(5, 'Sugarland');
Insert into Dept_Locations values(5, 'Houston');

-- Project
Insert into Project values( 'ProductX', 1, 'Bellaire', 5);
Insert into Project values( 'ProductY', 2, 'Sugarland', 5);
Insert into Project values( 'ProductZ', 3, 'Houston', 5);
Insert into Project values( 'Computerization', 10, 'Stafford', 4);
Insert into Project values( 'Reorganization', 20, 'Houston', 1);
Insert into Project values( 'Newbenefits', 30, 'Stafford', 4);

-- Works_on
Insert into Works_on values('123456789', 1, 32.5);
Insert into Works_on values('123456789', 2, 7.5);
Insert into Works_on values('666884444', 3, 40.0);
Insert into Works_on values('453453453', 1, 20.0);
Insert into Works_on values('453453453', 2, 20.5);
Insert into Works_on values('333445555', 2, 10.0);
Insert into Works_on values('333445555', 3, 10.0);
Insert into Works_on values('333445555', 20, 10.0);
Insert into Works_on values('999887777', 30, 30.0);
Insert into Works_on values('999887777', 10, 10.0);
Insert into Works_on values('987987987', 10, 35.0);
Insert into Works_on values('987987987', 30, 5.0);
Insert into Works_on values('987654321', 30, 20.0);
Insert into Works_on values('987654321', 20, 15.0);
Insert into Works_on values('888665555', 20, null);

-- Dependent
Insert into Dependent values('333445555', 'Alice', 'F', TO_DATE('1986-04-
05','YYYY-MM-DD'), 'DAUGHTER');
Insert into Dependent values('333445555', 'Theodore', 'M', TO_DATE('1983-10-
25','YYYY-MM-DD'), 'SON');
Insert into Dependent values('333445555', 'Joy', 'F', TO_DATE('1958-05-03','YYYY-
MM-DD'), 'SPOUSE');
Insert into Dependent values('987654321', 'Abner', 'M', TO_DATE('1942-02-
28','YYYY-MM-DD'), 'SPOUSE');
Insert into Dependent values('123456789', 'Michael', 'M', TO_DATE('1988-01-
04','YYYY-MM-DD'), 'SON');
Insert into Dependent values('123456789', 'Alice', 'F', TO_DATE('1988-12-
30','YYYY-MM-DD'), 'DAUGHTER');
Insert into Dependent values('123456789', 'Elizabeth', 'F', TO_DATE('1967-05-
05','YYYY-MM-DD'), 'SPOUSE');

CREATE TABLE ChiNhanh(


MaChiNhanh CHAR(3) NOT NULL,
TenChiNhanh VARCHAR(15) NOT NULL,
LaTruSo CHAR(3) NOT NULL CHECK(LaTruSo == "yes" OR
LaTruSo == "no"),
MaNhanVien CHAR(5) NOT NULL,
PRIMARY KEY(MaChiNhanh), NOT NULL,
FOREIGN KEY(MaNhanVien) REFERENCES NhanVien(MaNhanVien));

You might also like