You are on page 1of 2

quesion no 3

1 CREATE TABLE emp1 (

employee_id SERIAL PRIMARY KEY,

f_name VARCHAR(255) NOT NULL,

middle_name VARCHAR(255),

last_name VARCHAR(255) NOT NULL,

dob DATE NOT NULL,

address VARCHAR(255),

gender CHAR(1) CHECK (gender IN ('M', 'F')),

salary INTEGER CHECK (salary BETWEEN 5000 AND 25000),

date_of_join DATE,

dept_name VARCHAR(255) REFERENCES dept(dept_name)

);

2 CREATE TABLE dept (

dept_id SERIAL PRIMARY KEY,

dept_name VARCHAR(255) NOT NULL UNIQUE,

manager_id INTEGER REFERENCES employee(employee_id),

date_of_join DATE NOT NULL

);

3 CREATE TABLE deploc (

dept_no INTEGER REFERENCES dept(dept_id),

dept_loc VARCHAR(255) NOT NULL,

PRIMARY KEY (dept_no, dept_loc)


);

4 CREATE TABLE project (

p_no INTEGER PRIMARY KEY,

p_nm VARCHAR(255) NOT NULL,

p_loc VARCHAR(255) NOT NULL,

dept_no INTEGER REFERENCES dept(dept_no)

);

5 CREATE TABLE dependent (

emp_id INTEGER REFERENCES emp1(employee_id),

dpt_name VARCHAR(255) NOT NULL,

gender CHAR(1) CHECK (gender IN ('M', 'F')),

dob DATE NOT NULL,

relationship VARCHAR(255) NOT NULL

);

6 CREATE TABLE work_on (

emp_id INTEGER REFERENCES emp1(employee_id),

p_no INTEGER REFERENCES project(p_no) NOT NULL,

hours INTEGER NOT NULL,

PRIMARY KEY (emp_id, p_no)

);

You might also like