Added postgresql sql tasks.
parent
883bafe338
commit
55fb0dde38
@ -0,0 +1,127 @@
|
||||
CREATE TABLE regions (
|
||||
region_id INTEGER PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY,
|
||||
region_name VARCHAR(30)
|
||||
);
|
||||
|
||||
INSERT INTO regions
|
||||
(region_id, region_name)
|
||||
VALUES
|
||||
(1,'Europe'),
|
||||
(2,'Americas'),
|
||||
(3,'Asia'),
|
||||
(4,'Middle East and Africa');
|
||||
|
||||
SELECT setval('regions_region_id_seq', 4, true);
|
||||
|
||||
CREATE TABLE countries (
|
||||
country_id CHAR(2) PRIMARY KEY,
|
||||
country_name VARCHAR(45),
|
||||
region_id INTEGER NOT NULL REFERENCES regions (region_id)
|
||||
);
|
||||
|
||||
INSERT INTO countries(country_id,country_name,region_id) VALUES
|
||||
('AR','Argentina',2),
|
||||
('AU','Australia',3),
|
||||
('BE','Belgium',1),
|
||||
('BR','Brazil',2),
|
||||
('CA','Canada',2),
|
||||
('CH','Switzerland',1),
|
||||
('CN','China',3),
|
||||
('DE','Germany',1),
|
||||
('DK','Denmark',1),
|
||||
('EG','Egypt',4),
|
||||
('FR','France',1),
|
||||
('HK','HongKong',3),
|
||||
('IL','Israel',4),
|
||||
('IN','India',3),
|
||||
('IT','Italy',1),
|
||||
('JP','Japan',3),
|
||||
('KW','Kuwait',4),
|
||||
('MX','Mexico',2),
|
||||
('NG','Nigeria',4),
|
||||
('NL','Netherlands',1),
|
||||
('SG','Singapore',3),
|
||||
('UK','United Kingdom',1),
|
||||
('US','United States of America',2),
|
||||
('ZM','Zambia',4),
|
||||
('ZW','Zimbabwe',4);
|
||||
|
||||
CREATE TABLE locations (
|
||||
location_id INTEGER PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY,
|
||||
street_address VARCHAR(45),
|
||||
postal_code VARCHAR(12),
|
||||
city VARCHAR (30) NOT NULL,
|
||||
state_province VARCHAR (25),
|
||||
country_id CHAR(2) NOT NULL REFERENCES countries (country_id)
|
||||
);
|
||||
|
||||
INSERT INTO locations
|
||||
(location_id,street_address,postal_code,city,state_province,country_id)
|
||||
VALUES
|
||||
(1,'9122 Rockfeller Rd','34232','Effingham','Indiana','US'),
|
||||
(2,'44 Isaac Newton Ave','54898','London','London','UK'),
|
||||
(3,'Deutschland 3232','79822','Munich','Bavaria','DE'),
|
||||
(4,'210 W Main St','84032','Lehi','Utah','US');
|
||||
|
||||
SELECT setval('locations_location_id_seq', 4, true);
|
||||
|
||||
CREATE TABLE departments (
|
||||
department_id INTEGER PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY,
|
||||
department_name VARCHAR (30) NOT NULL,
|
||||
location_id INTEGER REFERENCES locations (location_id)
|
||||
);
|
||||
|
||||
INSERT INTO departments
|
||||
(department_id, department_name, location_id)
|
||||
VALUES
|
||||
(1,'Management', 1),
|
||||
(2,'Information Technology',2),
|
||||
(3,'Human Resources',3),
|
||||
(4,'Sales',1);
|
||||
|
||||
SELECT setval('departments_department_id_seq', 4, true);
|
||||
|
||||
CREATE TABLE employees (
|
||||
employee_id INTEGER PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY,
|
||||
first_name VARCHAR(20),
|
||||
last_name VARCHAR(25) NOT NULL,
|
||||
start_date DATE NOT NULL DEFAULT CURRENT_DATE,
|
||||
job_title VARCHAR(100) NOT NULL,
|
||||
salary NUMERIC (9, 2) NOT NULL,
|
||||
manager_id INTEGER,
|
||||
department_id INTEGER,
|
||||
FOREIGN KEY (department_id) REFERENCES departments (department_id),
|
||||
FOREIGN KEY (manager_id) REFERENCES employees (employee_id)
|
||||
);
|
||||
|
||||
INSERT INTO employees
|
||||
(employee_id, first_name, last_name, start_date, job_title, salary, manager_id, department_id)
|
||||
VALUES
|
||||
(1,'John','Smith','1989-05-07','President',364000.00,NULL,1),
|
||||
(2,'Pointy','HairedBoss','1999-08-12','CTO',27000.00,1,2),
|
||||
(3,'Dilbertzoni','DeScrewed','2001-02-02','Software Engineer',77000.00,2,2),
|
||||
(4,'Vanda','Socialist','1994-03-06','VP Equity Diversity Inclusion',90000.00,1,3),
|
||||
(5,'Howard','TheDuck','2001-08-11','VP Sales', 80000.00,1,4),
|
||||
(6,'Luke','Fett','2007-07-21','Sales Guy',68000.00,5,4),
|
||||
(7,'John','SkipWork','2003-05-03','HR Henchman',68000.00,4,3),
|
||||
(8,'Lea','Palpatine','2009-07-04','UI Designer',87000.00,2,2);
|
||||
|
||||
SELECT setval('employees_employee_id_seq', 8, true);
|
||||
|
||||
CREATE TABLE dependents (
|
||||
dependent_id INTEGER PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY,
|
||||
first_name VARCHAR (50) NOT NULL,
|
||||
last_name VARCHAR (50) NOT NULL,
|
||||
employee_id INTEGER NOT NULL REFERENCES employees (employee_id)
|
||||
);
|
||||
|
||||
INSERT INTO dependents
|
||||
(dependent_id, first_name, last_name, employee_id)
|
||||
VALUES
|
||||
(1,'Spoiled','Smith',1),
|
||||
(2,'DoNothin','Smith',1),
|
||||
(3,'Rafael','HairedBoss',2),
|
||||
(4,'Beta','HairedBoss',2),
|
||||
(5,'Wanda','DeScrewed',3);
|
||||
|
||||
SELECT setval('dependents_dependent_id_seq', 5, true);
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue