You are on page 1of 1

CREATE DATABASE company_database;

CREATE TABLE employee(person_name varchar(20) PRIMARY KEY not null, street varchar
(20), salary varchar(10), city varchar(20) );

CREATE TABLE company(company_name varchar(100) not null PRIMARY KEY, city


varchar(20) not null);

CREATE TABLE works(person_name varchar(20) not null, company_name varchar (100)not


null, salary int(10), FOREIGN KEY (person_name) REFERENCES employee(person_name),
FOREIGN KEY (company_name) REFERENCES company(company_name));

CREATE TABLE manages(person_name varchar(20) not null, manager_name varchar(20)


PRIMARY KEY not null, salary_of_manager varchar (10), FOREIGN KEY(person_name)
REFERENCES employee(person_name));

INSERT INTO company(company_name, city)


VALUES ('Beximco Textile Limited','Dhaka'), ('Padma Textile Limited','Dhaka');

INSERT INTO employee VALUES ('Abdullah','Mirpur','50000','Dhaka'),


('Mahmud','Dhanmondi','70000','Dhaka');

INSERT INTO works VALUES ('Abdullah','Beximco Textile Limited','50000'),


('Mahmud','Padma Textile Limited','70000');

INSERT INTO manages VALUES ('Abdullah','Harun','90000'),


('Mahmud','Abbas','80000');

SELECT person_name FROM employee, works, company WHERE


employee.person_name=works.person_name AND works.company_name =
company.company_name AND employee.city=company.city;

SELECT person_name, street, salary, city FROM employee WHERE person_name LIKE 'Md
%';

UPDATE manages SET salary_of_manager= salary_of_manager+(salary_of_manager * 10 /


100) WHERE salary_of_manager<100000;

CREATE TABLE works_backup AS SELECT * FROM works WHERE salary>=10000;

You might also like