ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/testsuite/resources/Test10.11.sql
Revision: 315
Committed: Thu Feb 25 11:56:36 2021 UTC (3 years, 2 months ago) by tony
Content type: application/sql
File size: 83485 byte(s)
Log Message:
Updated for IBX 4 release

File Contents

# Content
1 /* Script for ODS 11 */
2
3 SET SQL DIALECT 3;
4 SET AUTODDL ON;
5
6 CREATE DATABASE 'inet://localhost//tmp/ibx-testsuite/testsuite1.fdb' PAGE_SIZE 8192
7
8 DEFAULT CHARACTER SET NONE;
9 COMMENT ON DATABASE IS 'Employee Test DB';
10
11 /* Domain definitions */
12
13 CREATE DOMAIN ADDRESSLINE AS VARCHAR(30);
14 CREATE DOMAIN BUDGET AS DECIMAL(12, 2)
15 DEFAULT 50000;
16 CREATE DOMAIN COUNTRYNAME AS VARCHAR(15);
17 CREATE DOMAIN CUSTNO AS INTEGER;
18 CREATE DOMAIN DEPTNO AS CHAR(3);
19 CREATE DOMAIN EMPNO AS SMALLINT;
20 CREATE DOMAIN FB$OUT_TYPE AS BLOB SUB_TYPE TEXT SEGMENT SIZE 80 NOT NULL;
21 CREATE DOMAIN FIRSTNAME AS VARCHAR(15);
22 CREATE DOMAIN JOBCODE AS VARCHAR(5);
23 CREATE DOMAIN JOBGRADE AS SMALLINT;
24 CREATE DOMAIN LASTNAME AS VARCHAR(20);
25 CREATE DOMAIN PHONENUMBER AS VARCHAR(20);
26 CREATE DOMAIN PONUMBER AS CHAR(8);
27 CREATE DOMAIN PRODTYPE AS VARCHAR(12)
28 DEFAULT 'software' NOT NULL;
29 CREATE DOMAIN PROJNO AS CHAR(5);
30 CREATE DOMAIN SALARY AS NUMERIC(10, 2)
31 DEFAULT 0;
32
33 /* Table: COUNTRIES, Owner: SYSDBA */
34
35 CREATE TABLE COUNTRIES
36 (
37 COUNTRY VARCHAR(64) NOT NULL,
38 NONEU SMALLINT,
39 ISO2 CHAR(2),
40 ISO3 CHAR(3),
41 PRIMARY KEY (COUNTRY)
42 );
43 COMMENT ON TABLE COUNTRIES IS 'List of Countries';
44 COMMENT ON COLUMN COUNTRIES.ISO2 IS 'Two Character ISO Country Code';
45
46 /* Table: COUNTRY, Owner: SYSDBA */
47
48 CREATE TABLE COUNTRY
49 (
50 COUNTRY COUNTRYNAME NOT NULL,
51 CURRENCY VARCHAR(10) NOT NULL,
52 PRIMARY KEY (COUNTRY)
53 );
54
55 /* Table: CUSTOMER, Owner: SYSDBA */
56
57 CREATE TABLE CUSTOMER
58 (
59 CUST_NO CUSTNO NOT NULL,
60 CUSTOMER VARCHAR(25) NOT NULL,
61 CONTACT_FIRST FIRSTNAME,
62 CONTACT_LAST LASTNAME,
63 PHONE_NO PHONENUMBER,
64 ADDRESS_LINE1 ADDRESSLINE,
65 ADDRESS_LINE2 ADDRESSLINE,
66 CITY VARCHAR(25),
67 STATE_PROVINCE VARCHAR(15),
68 COUNTRY COUNTRYNAME,
69 POSTAL_CODE VARCHAR(12),
70 ON_HOLD CHAR(1) DEFAULT NULL,
71 LONG_REFERENCE BIGINT,
72 PRIMARY KEY (CUST_NO)
73 );
74
75 /* Table: DEPARTMENT, Owner: SYSDBA */
76
77 CREATE TABLE DEPARTMENT
78 (
79 DEPT_NO DEPTNO NOT NULL,
80 DEPARTMENT VARCHAR(25) NOT NULL,
81 HEAD_DEPT DEPTNO,
82 MNGR_NO EMPNO,
83 BUDGET BUDGET,
84 LOCATION VARCHAR(15),
85 PHONE_NO PHONENUMBER DEFAULT '555-1234',
86 UNIQUE (DEPARTMENT),
87 PRIMARY KEY (DEPT_NO)
88 );
89
90 /* Table: EMPLOYEE, Owner: SYSDBA */
91
92 CREATE TABLE EMPLOYEE
93 (
94 EMP_NO EMPNO NOT NULL,
95 FIRST_NAME FIRSTNAME NOT NULL,
96 LAST_NAME LASTNAME NOT NULL,
97 PHONE_EXT VARCHAR(4),
98 HIRE_DATE TIMESTAMP DEFAULT 'NOW' NOT NULL,
99 DEPT_NO DEPTNO NOT NULL,
100 JOB_CODE JOBCODE NOT NULL,
101 JOB_GRADE JOBGRADE NOT NULL,
102 JOB_COUNTRY COUNTRYNAME NOT NULL,
103 SALARY SALARY NOT NULL,
104 FULL_NAME COMPUTED BY (last_name || ', ' || first_name),
105 PRIMARY KEY (EMP_NO)
106 );
107
108 /* Table: EMPLOYEE_PROJECT, Owner: SYSDBA */
109
110 CREATE TABLE EMPLOYEE_PROJECT
111 (
112 EMP_NO EMPNO NOT NULL,
113 PROJ_ID PROJNO NOT NULL,
114 PRIMARY KEY (EMP_NO, PROJ_ID)
115 );
116
117 /* Table: FB$OUT_TABLE, Owner: SYSDBA */
118
119 CREATE GLOBAL TEMPORARY TABLE FB$OUT_TABLE
120 (
121 LINE_NUM INTEGER,
122 CONTENT FB$OUT_TYPE
123 ) ON COMMIT PRESERVE ROWS ;
124
125 /* Table: JOB, Owner: SYSDBA */
126
127 CREATE TABLE JOB
128 (
129 JOB_CODE JOBCODE NOT NULL,
130 JOB_GRADE JOBGRADE NOT NULL,
131 JOB_COUNTRY COUNTRYNAME NOT NULL,
132 JOB_TITLE VARCHAR(25) NOT NULL,
133 MIN_SALARY SALARY NOT NULL,
134 MAX_SALARY SALARY NOT NULL,
135 JOB_REQUIREMENT BLOB SUB_TYPE TEXT SEGMENT SIZE 400,
136 LANGUAGE_REQ VARCHAR(15)[1:5],
137 PRIMARY KEY (JOB_CODE, JOB_GRADE, JOB_COUNTRY)
138 );
139
140 /* Table: PROJECT, Owner: SYSDBA */
141
142 CREATE TABLE PROJECT
143 (
144 PROJ_ID PROJNO NOT NULL,
145 PROJ_NAME VARCHAR(20) NOT NULL,
146 PROJ_DESC BLOB SUB_TYPE TEXT SEGMENT SIZE 800,
147 TEAM_LEADER EMPNO,
148 PRODUCT PRODTYPE,
149 UNIQUE (PROJ_NAME),
150 PRIMARY KEY (PROJ_ID)
151 );
152
153 /* Table: PROJ_DEPT_BUDGET, Owner: SYSDBA */
154
155 CREATE TABLE PROJ_DEPT_BUDGET
156 (
157 FISCAL_YEAR INTEGER NOT NULL,
158 PROJ_ID PROJNO NOT NULL,
159 DEPT_NO DEPTNO NOT NULL,
160 QUART_HEAD_CNT INTEGER[1:4],
161 PROJECTED_BUDGET BUDGET,
162 PRIMARY KEY (FISCAL_YEAR, PROJ_ID, DEPT_NO)
163 );
164
165 /* Table: SALARY_HISTORY, Owner: SYSDBA */
166
167 CREATE TABLE SALARY_HISTORY
168 (
169 EMP_NO EMPNO NOT NULL,
170 CHANGE_DATE TIMESTAMP DEFAULT 'NOW' NOT NULL,
171 UPDATER_ID VARCHAR(20) NOT NULL,
172 OLD_SALARY SALARY NOT NULL,
173 PERCENT_CHANGE DOUBLE PRECISION DEFAULT 0 NOT NULL,
174 NEW_SALARY COMPUTED BY (old_salary + old_salary * percent_change / 100),
175 PRIMARY KEY (EMP_NO, CHANGE_DATE, UPDATER_ID)
176 );
177
178 /* Table: SALES, Owner: SYSDBA */
179
180 CREATE TABLE SALES
181 (
182 PO_NUMBER PONUMBER NOT NULL,
183 CUST_NO CUSTNO NOT NULL,
184 SALES_REP EMPNO,
185 ORDER_STATUS VARCHAR(7) DEFAULT 'new' NOT NULL,
186 ORDER_DATE TIMESTAMP DEFAULT 'NOW' NOT NULL,
187 SHIP_DATE TIMESTAMP,
188 DATE_NEEDED TIMESTAMP,
189 PAID CHAR(1) DEFAULT 'n',
190 QTY_ORDERED INTEGER DEFAULT 1 NOT NULL,
191 TOTAL_VALUE DECIMAL(9, 2) NOT NULL,
192 DISCOUNT FLOAT DEFAULT 0 NOT NULL,
193 ITEM_TYPE PRODTYPE,
194 AGED COMPUTED BY (ship_date - order_date),
195 PRIMARY KEY (PO_NUMBER)
196 );
197
198 /* External Function declarations */
199
200 DECLARE EXTERNAL FUNCTION ADDDAY
201 TIMESTAMP, INTEGER
202 RETURNS TIMESTAMP
203 ENTRY_POINT 'addDay' MODULE_NAME 'fbudf'
204
205 ;
206
207
208 DECLARE EXTERNAL FUNCTION I64TRUNCATE
209 NUMERIC(18, 0) BY DESCRIPTOR, NUMERIC(18, 0) BY DESCRIPTOR
210 RETURNS PARAMETER 2
211 ENTRY_POINT 'fbtruncate' MODULE_NAME 'fbudf'
212
213 ;
214
215
216 DECLARE EXTERNAL FUNCTION TESTIT
217 TIMESTAMP, INTEGER NULL, CSTRING(10) CHARACTER SET NONE, CSTRING(10) CHARACTER SET NONE BY DESCRIPTOR
218 RETURNS CSTRING(32) CHARACTER SET NONE FREE_IT
219 ENTRY_POINT 'testit' MODULE_NAME 'fbudf'
220
221 ;
222
223
224 /* Data Starts */
225
226 /* Inserting data into Table: COUNTRY */
227
228 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('USA','Dollar');
229 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('England','Pound');
230 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Canada','CdnDlr');
231 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Switzerland','SFranc');
232 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Japan','Yen');
233 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Italy','Euro');
234 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('France','Euro');
235 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Germany','Euro');
236 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Australia','ADollar');
237 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Hong Kong','HKDollar');
238 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Netherlands','Euro');
239 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Belgium','Euro');
240 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Austria','Euro');
241 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Fiji','FDollar');
242 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Russia','Ruble');
243 INSERT INTO COUNTRY (COUNTRY,CURRENCY) VALUES('Romania','RLeu');
244 COMMIT;
245
246 /* Inserting data into Table: CUSTOMER */
247
248 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1001,'Signature Design','Dale J.','Little','(619) 530-2710','15500 Pacific Heights Blvd.',NULL,'San Diego','CA','USA','92121',NULL,NULL);
249 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1002,'Dallas Technologies','Glen','Brown','(214) 960-2233','P. O. Box 47000',NULL,'Dallas','TX','USA','75205','*',NULL);
250 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1003,'Buttle, Griffith and Co.','James','Buttle','(617) 488-1864','2300 Newbury Street','Suite 101','Boston','MA','USA','02115',NULL,NULL);
251 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1004,'Central Bank','Elizabeth','Brocket','61 211 99 88','66 Lloyd Street',NULL,'Manchester',NULL,'England','M2 3LA',NULL,NULL);
252 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1005,'DT Systems, LTD.','Tai','Wu','(852) 850 43 98','400 Connaught Road',NULL,'Central Hong Kong',NULL,'Hong Kong',NULL,NULL,NULL);
253 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1006,'DataServe International','Tomas','Bright','(613) 229 3323','2000 Carling Avenue','Suite 150','Ottawa','ON','Canada','K1V 9G1',NULL,NULL);
254 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1007,'Mrs. Beauvais',NULL,'Mrs. Beauvais',NULL,'P.O. Box 22743',NULL,'Pebble Beach','CA','USA','93953',NULL,NULL);
255 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1008,'Anini Vacation Rentals','Leilani','Briggs','(808) 835-7605','3320 Lawai Road',NULL,'Lihue','HI','USA','96766',NULL,NULL);
256 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1009,'Max','Max',NULL,'22 01 23','1 Emerald Cove',NULL,'Turtle Island',NULL,'Fiji',NULL,'*',NULL);
257 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1010,'MPM Corporation','Miwako','Miyamoto','3 880 77 19','2-64-7 Sasazuka',NULL,'Tokyo',NULL,'Japan','150',NULL,NULL);
258 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1011,'Dynamic Intelligence Corp','Victor','Granges','01 221 16 50','Florhofgasse 10',NULL,'Zurich',NULL,'Switzerland','8005',NULL,NULL);
259 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1012,'3D-Pad Corp.','Michelle','Roche','1 43 60 61','22 Place de la Concorde',NULL,'Paris',NULL,'France','75008',NULL,NULL);
260 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1013,'Lorenzi Export, Ltd.','Andreas','Lorenzi','02 404 6284','Via Eugenia, 15',NULL,'Milan',NULL,'Italy','20124',NULL,NULL);
261 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1014,'Dyno Consulting','Greta','Hessels','02 500 5940','Rue Royale 350',NULL,'Brussels',NULL,'Belgium','1210',NULL,NULL);
262 INSERT INTO CUSTOMER (CUST_NO,CUSTOMER,CONTACT_FIRST,CONTACT_LAST,PHONE_NO,ADDRESS_LINE1,ADDRESS_LINE2,CITY,STATE_PROVINCE,COUNTRY,POSTAL_CODE,ON_HOLD,LONG_REFERENCE) VALUES(1015,'GeoTech Inc.','K.M.','Neppelenbroek','(070) 44 91 18','P.0.Box 702',NULL,'Den Haag',NULL,'Netherlands','2514',NULL,NULL);
263 COMMIT;
264
265 /* Inserting data into Table: DEPARTMENT */
266
267 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('000','Corporate Headquarters',NULL,105,1000000,'Monterey','(408) 555-1234');
268 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('100','Sales and Marketing','000',85,2000000,'San Francisco','(415) 555-1234');
269 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('600','Engineering','000',2,1100000,'Monterey','(408) 555-1234');
270 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('900','Finance','000',46,400000,'Monterey','(408) 555-1234');
271 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('180','Marketing','100',NULL,1500000,'San Francisco','(415) 555-1234');
272 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('620','Software Products Div.','600',NULL,1200000,'Monterey','(408) 555-1234');
273 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('621','Software Development','620',NULL,400000,'Monterey','(408) 555-1234');
274 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('622','Quality Assurance','620',9,300000,'Monterey','(408) 555-1234');
275 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('623','Customer Support','620',15,650000,'Monterey','(408) 555-1234');
276 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('670','Consumer Electronics Div.','600',107,1150000,'Burlington, VT','(802) 555-1234');
277 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('671','Research and Development','670',20,460000,'Burlington, VT','(802) 555-1234');
278 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('672','Customer Services','670',94,850000,'Burlington, VT','(802) 555-1234');
279 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('130','Field Office: East Coast','100',11,500000,'Boston','(617) 555-1234');
280 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('140','Field Office: Canada','100',72,500000,'Toronto','(416) 677-1000');
281 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('110','Pacific Rim Headquarters','100',34,600000,'Kuaui','(808) 555-1234');
282 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('115','Field Office: Japan','110',118,500000,'Tokyo','3 5350 0901');
283 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('116','Field Office: Singapore','110',NULL,300000,'Singapore','3 55 1234');
284 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('120','European Headquarters','100',36,700000,'London','71 235-4400');
285 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('121','Field Office: Switzerland','120',141,500000,'Zurich','1 211 7767');
286 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('123','Field Office: France','120',134,400000,'Cannes','58 68 11 12');
287 INSERT INTO DEPARTMENT (DEPT_NO,DEPARTMENT,HEAD_DEPT,MNGR_NO,BUDGET,LOCATION,PHONE_NO) VALUES('125','Field Office: Italy','120',121,400000,'Milan','2 430 39 39');
288 COMMIT;
289
290 /* Inserting data into Table: EMPLOYEE */
291
292 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(2,'Robert','Nelson','250','1988.12.28 00:00:00.000','600','VP',2,'USA',105900);
293 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(4,'Bruce','Young','233','1988.12.28 00:00:00.000','621','Eng',2,'USA',97500);
294 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(5,'Kim','Lambert','22','1989.02.06 00:00:00.000','130','Eng',2,'USA',102750);
295 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(8,'Leslie','Johnson','410','1989.04.05 00:00:00.000','180','Mktg',3,'USA',64635);
296 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(9,'Phil','Forest','229','1989.04.17 00:00:00.000','622','Mngr',3,'USA',75060);
297 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(11,'K. J.','Weston','34','1990.01.17 00:00:00.000','130','SRep',4,'USA',86292.94);
298 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(12,'Terri','Lee','256','1990.05.01 00:00:00.000','000','Admin',4,'USA',53793);
299 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(14,'Stewart','Hall','227','1990.06.04 00:00:00.000','900','Finan',3,'USA',69482.63);
300 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(15,'Katherine','Young','231','1990.06.14 00:00:00.000','623','Mngr',3,'USA',67241.25);
301 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(20,'Chris','Papadopoulos','887','1990.01.01 00:00:00.000','671','Mngr',3,'USA',89655);
302 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(24,'Pete','Fisher','888','1990.09.12 00:00:00.000','671','Eng',3,'USA',81810.19);
303 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(28,'Ann','Bennet','5','1991.02.01 00:00:00.000','120','Admin',5,'England',22935);
304 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(29,'Roger','De Souza','288','1991.02.18 00:00:00.000','623','Eng',3,'USA',69482.63);
305 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(34,'Janet','Baldwin','2','1991.03.21 00:00:00.000','110','Sales',3,'USA',61637.8);
306 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(36,'Roger','Reeves','6','1991.04.25 00:00:00.000','120','Sales',3,'England',33620.63);
307 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(37,'Willie','Stansbury','7','1991.04.25 00:00:00.000','120','Eng',4,'England',39224.06);
308 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(44,'Leslie','Phong','216','1991.06.03 00:00:00.000','623','Eng',4,'USA',56034.38);
309 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(45,'Ashok','Ramanathan','209','1991.08.01 00:00:00.000','621','Eng',3,'USA',80689.5);
310 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(46,'Walter','Steadman','210','1991.08.09 00:00:00.000','900','CFO',1,'USA',116100);
311 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(52,'Carol','Nordstrom','420','1991.10.02 00:00:00.000','180','PRel',4,'USA',42742.5);
312 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(61,'Luke','Leung','3','1992.02.18 00:00:00.000','110','SRep',4,'USA',68805);
313 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(65,'Sue Anne','O''Brien','877','1992.03.23 00:00:00.000','670','Admin',5,'USA',31275);
314 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(71,'Jennifer M.','Burbank','289','1992.04.15 00:00:00.000','622','Eng',3,'USA',53167.5);
315 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(72,'Claudia','Sutherland',NULL,'1992.04.20 00:00:00.000','140','SRep',4,'Canada',100914);
316 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(83,'Dana','Bishop','290','1992.06.02 00:00:00.000','621','Eng',3,'USA',62550.02);
317 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(85,'Mary S.','MacDonald','477','1992.06.01 00:00:00.000','100','VP',2,'USA',111262.5);
318 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(94,'Randy','Williams','892','1992.08.08 00:00:00.000','672','Mngr',4,'USA',56295);
319 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(105,'Oliver H A','Bender','255','1992.10.08 00:00:00.000','000','CEO',1,'USA',212850);
320 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(107,'Kevin','Cook','894','1993.02.01 00:00:00.000','670','Dir',2,'USA',111262.5);
321 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(109,'Kelly','Brown','202','1993.02.04 00:00:00.000','600','Admin',5,'USA',27000.01);
322 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(110,'Yuki','Ichida','22','1993.02.04 00:00:00.000','115','Eng',3,'Japan',6000000);
323 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(113,'Mary','Page','845','1993.04.12 00:00:00.000','671','Eng',4,'USA',48000);
324 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(114,'Bill','Parker','247','1993.06.01 00:00:00.000','623','Eng',5,'USA',35000);
325 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(118,'Takashi','Yamamoto','23','1993.07.01 00:00:00.000','115','SRep',4,'Japan',7480000);
326 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(121,'Roberto','Ferrari','1','1993.07.12 00:00:00.000','125','SRep',4,'USA',33000.01);
327 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(127,'Michael','Yanowski','492','1993.08.09 00:00:00.000','100','SRep',4,'USA',44000);
328 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(134,'Jacques','Glon',NULL,'1993.08.23 00:00:00.000','123','SRep',4,'France',38500);
329 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(136,'Scott','Johnson','265','1993.09.13 00:00:00.000','623','Doc',3,'USA',60000);
330 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(138,'T.J.','Green','218','1993.11.01 00:00:00.000','621','Eng',4,'USA',36000);
331 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(141,'Pierre','Osborne',NULL,'1994.01.03 00:00:00.000','121','SRep',4,'Switzerland',110000);
332 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(144,'John','Montgomery','820','1994.03.30 00:00:00.000','672','Eng',5,'USA',35000);
333 INSERT INTO EMPLOYEE (EMP_NO,FIRST_NAME,LAST_NAME,PHONE_EXT,HIRE_DATE,DEPT_NO,JOB_CODE,JOB_GRADE,JOB_COUNTRY,SALARY) VALUES(145,'Mark','Guckenheimer','221','1994.05.02 00:00:00.000','622','Eng',5,'USA',32000);
334 COMMIT;
335
336 /* Inserting data into Table: EMPLOYEE_PROJECT */
337
338 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(144,'DGPII');
339 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(113,'DGPII');
340 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(24,'DGPII');
341 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(8,'VBASE');
342 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(136,'VBASE');
343 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(15,'VBASE');
344 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(71,'VBASE');
345 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(145,'VBASE');
346 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(44,'VBASE');
347 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(4,'VBASE');
348 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(83,'VBASE');
349 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(138,'VBASE');
350 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(45,'VBASE');
351 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(20,'GUIDE');
352 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(24,'GUIDE');
353 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(113,'GUIDE');
354 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(8,'GUIDE');
355 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(4,'MAPDB');
356 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(71,'MAPDB');
357 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(46,'MKTPR');
358 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(105,'MKTPR');
359 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(12,'MKTPR');
360 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(85,'MKTPR');
361 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(110,'MKTPR');
362 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(34,'MKTPR');
363 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(8,'MKTPR');
364 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(14,'MKTPR');
365 INSERT INTO EMPLOYEE_PROJECT (EMP_NO,PROJ_ID) VALUES(52,'MKTPR');
366 COMMIT;
367
368 /* Inserting data into Table: JOB */
369
370 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('CEO',1,'USA','Chief Executive Officer',130000,250000,'No specific requirements.
371 ',NULL);
372 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('CFO',1,'USA','Chief Financial Officer',85000,140000,'15+ years in finance or 5+ years as a CFO
373 with a proven track record.
374 MBA or J.D. degree.
375 ',NULL);
376 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('VP',2,'USA','Vice President',80000,130000,'No specific requirements.
377 ',NULL);
378 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Dir',2,'USA','Director',75000,120000,'5-10 years as a director in computer or electronics industries.
379 An advanced degree.
380 ',NULL);
381 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Mngr',3,'USA','Manager',60000,100000,'BA/BS required.
382 3-5 years in management,
383 plus 2-4 years engineering experience.
384 ',NULL);
385 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Mngr',4,'USA','Manager',30000,60000,'5+ years office management experience.
386 ',NULL);
387 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Admin',4,'USA','Administrative Assistant',35000,55000,'3-5 years experience in executive environment.
388 Strong organizational and communication skills required.
389 BA degree preferred.
390 ',NULL);
391 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Admin',5,'USA','Administrative Assistant',20000,40000,'2-4 years clerical experience.
392 Facility with word processing and data entry.
393 AA degree preferred.
394 ',NULL);
395 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Admin',5,'England','Administrative Assistant',13400,26800,NULL,NULL);
396 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('PRel',4,'USA','Public Relations Rep.',25000,65000,NULL,NULL);
397 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Mktg',3,'USA','Marketing Analyst',40000,80000,'MBA required.
398 10+ years experience in high tech environment.
399 ',NULL);
400 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Mktg',4,'USA','Marketing Analyst',20000,50000,'BA/BS required. MBA preferred.
401 3-5 years experience.
402 Knowledgeable with spreadsheets and databases.
403 ',NULL);
404 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Accnt',4,'USA','Accountant',28000,55000,'CPA with 3-5 years experience.
405 Spreadsheet, data entry, and word processing knowledge required.
406 ',NULL);
407 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Finan',3,'USA','Financial Analyst',35000,85000,'5-10 years of accounting and financial experience.
408 Strong analytical skills.
409 CPA/MBA required.
410 ',NULL);
411 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Eng',2,'USA','Engineer',70000,110000,'Distinguished engineer.
412 Ph.D/MS/BS or equivalent experience.
413 ',NULL);
414 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Eng',3,'USA','Engineer',50000,90000,'5+ years experience.
415 BA/BS required.
416 MS degree preferred.
417 ',NULL);
418 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Eng',3,'Japan','Engineer',5400000,9720000,'5+ years experience.
419 BA/BS and/or MS degrees required.
420 Customer support experience desired.
421 Knowledge of Japanese and English.
422 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
423 <elt ix="1">Japanese
424 </elt>
425 <elt ix="2">Mandarin
426 </elt>
427 <elt ix="3">English
428 </elt>
429 <elt ix="4">
430 </elt>
431 <elt ix="5">
432 </elt>
433 </array>
434 );
435 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Eng',4,'USA','Engineer',30000,65000,'BA/BS and 3-5 years experience.
436 ',NULL);
437 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Eng',4,'England','Engineer',20100,43550,'BA/BS and
438 2-4 years experience in technical support.
439 Knowledge of several European languages helpful.
440 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
441 <elt ix="1">English
442 </elt>
443 <elt ix="2">German
444 </elt>
445 <elt ix="3">French
446 </elt>
447 <elt ix="4">
448 </elt>
449 <elt ix="5">
450 </elt>
451 </array>
452 );
453 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Eng',5,'USA','Engineer',25000,35000,'BA/BS preferred.
454 2-4 years technical experience.
455 ',NULL);
456 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Doc',3,'USA','Technical Writer',38000,60000,'4+ years writing highly technical
457 software documentation.
458 A bachelor''s degree or equivalent.
459 Programming experience required.
460 Excellent language skills.
461 ',NULL);
462 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Doc',5,'USA','Technical Writer',22000,40000,'BA in English/journalism or excellent language skills.
463 Some programming experience required.
464 2-4 years of technical writing.
465 ',NULL);
466 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Sales',3,'USA','Sales Co-ordinator',40000,70000,'Experience in sales and public relations
467 in a high tech environment.
468 Excellent communication skills.
469 BA or equivalent.
470 ',NULL);
471 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('Sales',3,'England','Sales Co-ordinator',26800,46900,'Experience in sales and public relations
472 in a high tech environment.
473 Excellent communication skills.
474 BA or equivalent.
475 Knowledge of several European languages helpful.
476 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
477 <elt ix="1">English
478 </elt>
479 <elt ix="2">German
480 </elt>
481 <elt ix="3">French
482 </elt>
483 <elt ix="4">
484 </elt>
485 <elt ix="5">
486 </elt>
487 </array>
488 );
489 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('SRep',4,'USA','Sales Representative',20000,100000,'Computer/electronics industry sales experience.
490 Excellent communications, negotiation, and analytical skills.
491 Experience in establishing long term customer relationships.
492 Some knowledge of Spanish required.
493 Travel required.
494 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
495 <elt ix="1">English
496 </elt>
497 <elt ix="2">Spanish
498 </elt>
499 <elt ix="3">
500 </elt>
501 <elt ix="4">
502 </elt>
503 <elt ix="5">
504 </elt>
505 </array>
506 );
507 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('SRep',4,'England','Sales Representative',13400,67000,'Computer/electronics industry sales experience.
508 Excellent communications, negotiation, and analytical skills.
509 Experience in establishing long term customer relationships.
510 Knowledge of several European languages helpful.
511 Travel required.
512 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
513 <elt ix="1">English
514 </elt>
515 <elt ix="2">German
516 </elt>
517 <elt ix="3">French
518 </elt>
519 <elt ix="4">
520 </elt>
521 <elt ix="5">
522 </elt>
523 </array>
524 );
525 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('SRep',4,'Canada','Sales Representative',26400,132000,'Computer/electronics industry sales experience.
526 Excellent communications, negotiation, and analytical skills.
527 Experience in establishing long term customer relationships.
528 Travel required.
529 English plus speaking knowledge of French required.
530 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
531 <elt ix="1">English
532 </elt>
533 <elt ix="2">French
534 </elt>
535 <elt ix="3">
536 </elt>
537 <elt ix="4">
538 </elt>
539 <elt ix="5">
540 </elt>
541 </array>
542 );
543 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('SRep',4,'Switzerland','Sales Representative',28000,149000,'Computer/electronics industry sales experience.
544 Excellent communications, negotiation, and analytical skills.
545 Experience in establishing long term customer relationships.
546 Knowledge of German required; one or more other European language helpful.
547 Travel required.
548 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
549 <elt ix="1">German
550 </elt>
551 <elt ix="2">French
552 </elt>
553 <elt ix="3">English
554 </elt>
555 <elt ix="4">Italian
556 </elt>
557 <elt ix="5">
558 </elt>
559 </array>
560 );
561 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('SRep',4,'Japan','Sales Representative',2160000,10800000,'Computer/electronics industry sales experience.
562 Excellent communications, negotiation, and analytical skills.
563 Experience in establishing long term customer relationships.
564 Knowledge of Japanese required.
565 Travel required.
566 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
567 <elt ix="1">Japanese
568 </elt>
569 <elt ix="2">English
570 </elt>
571 <elt ix="3">
572 </elt>
573 <elt ix="4">
574 </elt>
575 <elt ix="5">
576 </elt>
577 </array>
578 );
579 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('SRep',4,'Italy','Sales Representative',20000,100000,'Computer/electronics industry sales experience.
580 Excellent communications, negotiation, and analytical skills.
581 Experience in establishing long term customer relationships.
582 Fluency in Italian; some knowledge of German helpful.
583 Travel required.
584 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
585 <elt ix="1">Italian
586 </elt>
587 <elt ix="2">German
588 </elt>
589 <elt ix="3">French
590 </elt>
591 <elt ix="4">
592 </elt>
593 <elt ix="5">
594 </elt>
595 </array>
596 );
597 INSERT INTO JOB (JOB_CODE,JOB_GRADE,JOB_COUNTRY,JOB_TITLE,MIN_SALARY,MAX_SALARY,JOB_REQUIREMENT,LANGUAGE_REQ) VALUES('SRep',4,'France','Sales Representative',20000,100000,'Computer/electronics industry sales experience.
598 Excellent communications, negotiation, and analytical skills.
599 Experience in establishing long term customer relationships.
600 Fluency in French; some knowledge of German/Spanish helpful.
601 Travel required.
602 ',<array dim = "1" sqltype = "448" length = "15" relation_name = "JOB" column_name = "LANGUAGE_REQ" charset = "NONE" bounds="1:5">
603 <elt ix="1">English
604 </elt>
605 <elt ix="2">French
606 </elt>
607 <elt ix="3">Spanish
608 </elt>
609 <elt ix="4">
610 </elt>
611 <elt ix="5">
612 </elt>
613 </array>
614 );
615 COMMIT;
616
617 /* Inserting data into Table: PROJECT */
618
619 INSERT INTO PROJECT (PROJ_ID,PROJ_NAME,PROJ_DESC,TEAM_LEADER,PRODUCT) VALUES('VBASE','Video Database','Design a video data base management system for
620 controlling on-demand video distribution.
621 ',45,'software');
622 INSERT INTO PROJECT (PROJ_ID,PROJ_NAME,PROJ_DESC,TEAM_LEADER,PRODUCT) VALUES('DGPII','DigiPizza','Develop second generation digital pizza maker
623 with flash-bake heating element and
624 digital ingredient measuring system.
625 ',24,'other');
626 INSERT INTO PROJECT (PROJ_ID,PROJ_NAME,PROJ_DESC,TEAM_LEADER,PRODUCT) VALUES('GUIDE','AutoMap','Develop a prototype for the automobile version of
627 the hand-held map browsing device.
628 ',20,'hardware');
629 INSERT INTO PROJECT (PROJ_ID,PROJ_NAME,PROJ_DESC,TEAM_LEADER,PRODUCT) VALUES('MAPDB','MapBrowser port','Port the map browsing database software to run
630 on the automobile model.
631 ',4,'software');
632 INSERT INTO PROJECT (PROJ_ID,PROJ_NAME,PROJ_DESC,TEAM_LEADER,PRODUCT) VALUES('HWRII','Translator upgrade','Integrate the hand-writing recognition module into the
633 universal language translator.
634 ',NULL,'software');
635 INSERT INTO PROJECT (PROJ_ID,PROJ_NAME,PROJ_DESC,TEAM_LEADER,PRODUCT) VALUES('MKTPR','Marketing project 3','Expand marketing and sales in the Pacific Rim.
636 Set up a field office in Australia and Singapore.
637 ',85,'N/A');
638 COMMIT;
639
640 /* Inserting data into Table: PROJ_DEPT_BUDGET */
641
642 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'GUIDE','100',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
643 <elt ix="1">1</elt>
644 <elt ix="2">1</elt>
645 <elt ix="3">1</elt>
646 <elt ix="4">0</elt>
647 </array>
648 ,200000);
649 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'GUIDE','671',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
650 <elt ix="1">3</elt>
651 <elt ix="2">2</elt>
652 <elt ix="3">1</elt>
653 <elt ix="4">0</elt>
654 </array>
655 ,450000);
656 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1993,'MAPDB','621',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
657 <elt ix="1">0</elt>
658 <elt ix="2">0</elt>
659 <elt ix="3">0</elt>
660 <elt ix="4">1</elt>
661 </array>
662 ,20000);
663 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'MAPDB','621',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
664 <elt ix="1">2</elt>
665 <elt ix="2">1</elt>
666 <elt ix="3">0</elt>
667 <elt ix="4">0</elt>
668 </array>
669 ,40000);
670 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'MAPDB','622',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
671 <elt ix="1">1</elt>
672 <elt ix="2">1</elt>
673 <elt ix="3">0</elt>
674 <elt ix="4">0</elt>
675 </array>
676 ,60000);
677 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'MAPDB','671',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
678 <elt ix="1">1</elt>
679 <elt ix="2">1</elt>
680 <elt ix="3">0</elt>
681 <elt ix="4">0</elt>
682 </array>
683 ,11000);
684 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'HWRII','670',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
685 <elt ix="1">1</elt>
686 <elt ix="2">1</elt>
687 <elt ix="3">1</elt>
688 <elt ix="4">1</elt>
689 </array>
690 ,20000);
691 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'HWRII','621',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
692 <elt ix="1">2</elt>
693 <elt ix="2">3</elt>
694 <elt ix="3">2</elt>
695 <elt ix="4">1</elt>
696 </array>
697 ,400000);
698 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'HWRII','622',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
699 <elt ix="1">1</elt>
700 <elt ix="2">1</elt>
701 <elt ix="3">2</elt>
702 <elt ix="4">2</elt>
703 </array>
704 ,100000);
705 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'MKTPR','623',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
706 <elt ix="1">1</elt>
707 <elt ix="2">1</elt>
708 <elt ix="3">1</elt>
709 <elt ix="4">2</elt>
710 </array>
711 ,80000);
712 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'MKTPR','672',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
713 <elt ix="1">1</elt>
714 <elt ix="2">1</elt>
715 <elt ix="3">1</elt>
716 <elt ix="4">2</elt>
717 </array>
718 ,100000);
719 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'MKTPR','100',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
720 <elt ix="1">4</elt>
721 <elt ix="2">5</elt>
722 <elt ix="3">6</elt>
723 <elt ix="4">6</elt>
724 </array>
725 ,1000000);
726 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'MKTPR','110',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
727 <elt ix="1">2</elt>
728 <elt ix="2">2</elt>
729 <elt ix="3">0</elt>
730 <elt ix="4">3</elt>
731 </array>
732 ,200000);
733 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'MKTPR','000',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
734 <elt ix="1">1</elt>
735 <elt ix="2">1</elt>
736 <elt ix="3">2</elt>
737 <elt ix="4">2</elt>
738 </array>
739 ,100000);
740 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1995,'MKTPR','623',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
741 <elt ix="1">7</elt>
742 <elt ix="2">7</elt>
743 <elt ix="3">4</elt>
744 <elt ix="4">4</elt>
745 </array>
746 ,1200000);
747 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1995,'MKTPR','672',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
748 <elt ix="1">2</elt>
749 <elt ix="2">3</elt>
750 <elt ix="3">3</elt>
751 <elt ix="4">3</elt>
752 </array>
753 ,800000);
754 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1995,'MKTPR','100',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
755 <elt ix="1">4</elt>
756 <elt ix="2">5</elt>
757 <elt ix="3">6</elt>
758 <elt ix="4">6</elt>
759 </array>
760 ,2000000);
761 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1995,'MKTPR','110',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
762 <elt ix="1">1</elt>
763 <elt ix="2">1</elt>
764 <elt ix="3">1</elt>
765 <elt ix="4">1</elt>
766 </array>
767 ,1200000);
768 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'VBASE','621',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
769 <elt ix="1">4</elt>
770 <elt ix="2">5</elt>
771 <elt ix="3">5</elt>
772 <elt ix="4">3</elt>
773 </array>
774 ,1900000);
775 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1995,'VBASE','621',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
776 <elt ix="1">4</elt>
777 <elt ix="2">3</elt>
778 <elt ix="3">2</elt>
779 <elt ix="4">2</elt>
780 </array>
781 ,900000);
782 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'VBASE','622',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
783 <elt ix="1">2</elt>
784 <elt ix="2">2</elt>
785 <elt ix="3">2</elt>
786 <elt ix="4">1</elt>
787 </array>
788 ,400000);
789 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1994,'VBASE','100',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
790 <elt ix="1">1</elt>
791 <elt ix="2">1</elt>
792 <elt ix="3">2</elt>
793 <elt ix="4">3</elt>
794 </array>
795 ,300000);
796 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1995,'VBASE','100',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
797 <elt ix="1">3</elt>
798 <elt ix="2">3</elt>
799 <elt ix="3">1</elt>
800 <elt ix="4">1</elt>
801 </array>
802 ,1500000);
803 INSERT INTO PROJ_DEPT_BUDGET (FISCAL_YEAR,PROJ_ID,DEPT_NO,QUART_HEAD_CNT,PROJECTED_BUDGET) VALUES(1996,'VBASE','100',<array dim = "1" sqltype = "496" length = "4" relation_name = "PROJ_DEPT_BUDGET" column_name = "QUART_HEAD_CNT" scale = "0" bounds="1:4">
804 <elt ix="1">1</elt>
805 <elt ix="2">1</elt>
806 <elt ix="3">0</elt>
807 <elt ix="4">0</elt>
808 </array>
809 ,150000);
810 COMMIT;
811
812 /* Inserting data into Table: SALARY_HISTORY */
813
814 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(28,'1992.12.15 00:00:00.000','admin2',20000,10);
815 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(2,'1992.12.15 00:00:00.000','admin2',98000,8.0612);
816 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(4,'1992.12.15 00:00:00.000','admin2',90000,8.3333);
817 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(5,'1992.12.15 00:00:00.000','admin2',95000,8.1578);
818 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(11,'1992.12.15 00:00:00.000','admin2',70000,7.5);
819 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(12,'1992.12.15 00:00:00.000','admin2',48000,7.5);
820 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(14,'1992.12.15 00:00:00.000','admin2',62000,7.5);
821 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(15,'1992.12.15 00:00:00.000','admin2',60000,7.5);
822 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(20,'1992.12.15 00:00:00.000','admin2',80000,7.5);
823 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(24,'1992.12.15 00:00:00.000','admin2',73000,7.5);
824 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(29,'1992.12.15 00:00:00.000','admin2',62000,7.5);
825 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(34,'1992.12.15 00:00:00.000','admin2',55000,7.5);
826 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(36,'1992.12.15 00:00:00.000','admin2',30000,7.5);
827 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(37,'1992.12.15 00:00:00.000','admin2',35000,7.5);
828 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(44,'1992.12.15 00:00:00.000','admin2',50000,7.5);
829 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(45,'1992.12.15 00:00:00.000','admin2',72000,7.5);
830 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(8,'1993.09.08 00:00:00.000','elaine',62000,4.25);
831 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(9,'1993.09.08 00:00:00.000','elaine',72000,4.25);
832 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(11,'1993.09.08 00:00:00.000','elaine',75250,4.25);
833 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(12,'1993.09.08 00:00:00.000','elaine',51600,4.25);
834 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(14,'1993.09.08 00:00:00.000','elaine',66650,4.25);
835 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(15,'1993.09.08 00:00:00.000','elaine',64500,4.25);
836 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(20,'1993.09.08 00:00:00.000','elaine',86000,4.25);
837 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(24,'1993.09.08 00:00:00.000','elaine',78475,4.25);
838 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(28,'1993.09.08 00:00:00.000','elaine',22000,4.25);
839 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(29,'1993.09.08 00:00:00.000','elaine',66650,4.25);
840 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(34,'1993.09.08 00:00:00.000','elaine',59125,4.2499);
841 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(36,'1993.09.08 00:00:00.000','elaine',32250,4.25);
842 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(37,'1993.09.08 00:00:00.000','elaine',37625,4.2499);
843 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(44,'1993.09.08 00:00:00.000','elaine',53750,4.25);
844 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(45,'1993.09.08 00:00:00.000','elaine',77400,4.25);
845 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(52,'1993.09.08 00:00:00.000','elaine',41000,4.25);
846 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(61,'1993.09.08 00:00:00.000','elaine',60000,4.25);
847 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(65,'1993.09.08 00:00:00.000','elaine',30000,4.25);
848 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(71,'1993.09.08 00:00:00.000','elaine',51000,4.25);
849 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(72,'1993.09.08 00:00:00.000','elaine',88000,4.25);
850 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(83,'1993.09.08 00:00:00.000','elaine',60000,4.25);
851 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(94,'1993.09.08 00:00:00.000','elaine',54000,4.25);
852 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(46,'1993.12.20 00:00:00.000','tj',120000,-3.25);
853 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(85,'1993.12.20 00:00:00.000','tj',115000,-3.25);
854 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(105,'1993.12.20 00:00:00.000','tj',220000,-3.25);
855 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(107,'1993.12.20 00:00:00.000','tj',115000,-3.25);
856 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(11,'1993.12.20 00:00:00.000','elaine',78448.13,9.9999);
857 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(61,'1993.12.20 00:00:00.000','elaine',62550,10);
858 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(72,'1993.12.20 00:00:00.000','elaine',91740,10);
859 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(118,'1993.12.20 00:00:00.000','elaine',6800000,10);
860 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(121,'1993.12.20 00:00:00.000','elaine',30000,10);
861 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(127,'1993.12.20 00:00:00.000','elaine',40000,10);
862 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(134,'1993.12.20 00:00:00.000','elaine',35000,10);
863 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(28,'2017.11.06 16:46:27.145','SYSDBA',22935,0);
864 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(28,'2017.11.06 16:47:01.376','SYSDBA',22935.01,0);
865 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(12,'2017.12.29 12:18:48.909','SYSDBA',53793,0);
866 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(12,'2017.12.29 12:18:58.051','SYSDBA',53793.01,0);
867 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(83,'2018.01.04 10:57:34.245','SYSDBA',62550,0);
868 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(121,'2018.03.13 15:29:08.850','SYSDBA',33000,0);
869 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(109,'2018.03.13 17:12:06.340','SYSDBA',27000,0);
870 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(34,'2018.03.13 17:13:20.671','SYSDBA',61637.81,0);
871 INSERT INTO SALARY_HISTORY (EMP_NO,CHANGE_DATE,UPDATER_ID,OLD_SALARY,PERCENT_CHANGE) VALUES(83,'2018.03.13 17:13:35.845','SYSDBA',62550.01,0);
872 COMMIT;
873
874 /* Inserting data into Table: SALES */
875
876 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V91E0210',1004,11,'shipped','1991.03.04 00:00:00.000','1991.03.05 00:00:00.000',NULL,'y',10,5000,0.100000001490116,'hardware');
877 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V92E0340',1004,11,'shipped','1992.10.15 00:00:00.000','1992.10.16 00:00:00.000','1992.10.17 00:00:00.000','y',7,70000,0,'hardware');
878 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V92J1003',1010,61,'shipped','1992.07.26 00:00:00.000','1992.08.04 00:00:00.000','1992.09.15 00:00:00.000','y',15,2985,0,'software');
879 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93J2004',1010,118,'shipped','1993.10.30 00:00:00.000','1993.12.02 00:00:00.000','1993.11.15 00:00:00.000','y',3,210,0,'software');
880 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93J3100',1010,118,'shipped','1993.08.20 00:00:00.000','1993.08.20 00:00:00.000',NULL,'y',16,18000.4,0.100000001490116,'software');
881 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V92F3004',1012,11,'shipped','1992.10.15 00:00:00.000','1993.01.16 00:00:00.000','1993.01.16 00:00:00.000','y',3,2000,0,'software');
882 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93F3088',1012,134,'shipped','1993.08.27 00:00:00.000','1993.09.08 00:00:00.000',NULL,'n',10,10000,0,'software');
883 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93F2030',1012,134,'open','1993.12.12 00:00:00.000',NULL,NULL,'y',15,450000.49,0,'hardware');
884 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93F2051',1012,134,'waiting','1993.12.18 00:00:00.000',NULL,'1994.03.01 00:00:00.000','n',1,999.98,0,'software');
885 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93H0030',1005,118,'open','1993.12.12 00:00:00.000',NULL,'1994.01.01 00:00:00.000','y',20,5980,0.200000002980232,'software');
886 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V94H0079',1005,61,'open','1994.02.13 00:00:00.000',NULL,'1994.04.20 00:00:00.000','n',10,9000,0.0500000007450581,'software');
887 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9324200',1001,72,'shipped','1993.08.09 00:00:00.000','1993.08.09 00:00:00.000','1993.08.17 00:00:00.000','y',1000,560000,0.200000002980232,'hardware');
888 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9324320',1001,127,'shipped','1993.08.16 00:00:00.000','1993.08.16 00:00:00.000','1993.09.01 00:00:00.000','y',1,0,1,'software');
889 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9320630',1001,127,'open','1993.12.12 00:00:00.000',NULL,'1993.12.15 00:00:00.000','n',3,60000,0.200000002980232,'hardware');
890 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9420099',1001,127,'open','1994.01.17 00:00:00.000',NULL,'1994.06.01 00:00:00.000','n',100,3399.15,0.150000005960464,'software');
891 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9427029',1001,127,'shipped','1994.02.07 00:00:00.000','1994.02.10 00:00:00.000','1994.02.10 00:00:00.000','n',17,422210.97,0,'hardware');
892 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9333005',1002,11,'shipped','1993.02.03 00:00:00.000','1993.03.03 00:00:00.000',NULL,'y',2,600.5,0,'software');
893 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9333006',1002,11,'shipped','1993.04.27 00:00:00.000','1993.05.02 00:00:00.000','1993.05.02 00:00:00.000','n',5,20000,0,'other');
894 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9336100',1002,11,'waiting','1993.12.27 00:00:00.000','1994.01.01 00:00:00.000','1994.01.01 00:00:00.000','n',150,14850,0.0500000007450581,'software');
895 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9346200',1003,11,'waiting','1993.12.31 00:00:00.000',NULL,'1994.01.24 00:00:00.000','n',3,0,1,'software');
896 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9345200',1003,11,'shipped','1993.11.11 00:00:00.000','1993.12.02 00:00:00.000','1993.12.01 00:00:00.000','y',900,27000,0.300000011920929,'software');
897 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9345139',1003,127,'shipped','1993.09.09 00:00:00.000','1993.09.20 00:00:00.000','1993.10.01 00:00:00.000','y',20,12582.12,0.100000001490116,'software');
898 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93C0120',1006,72,'shipped','1993.03.22 00:00:00.000','1993.05.31 00:00:00.000','1993.04.17 00:00:00.000','y',1,47.5,0,'other');
899 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93C0990',1006,72,'shipped','1993.08.09 00:00:00.000','1993.09.02 00:00:00.000',NULL,'y',40,399960.5,0.100000001490116,'hardware');
900 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V9456220',1007,127,'open','1994.01.04 00:00:00.000',NULL,'1994.01.30 00:00:00.000','y',1,3999.99,0,'hardware');
901 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93S4702',1011,121,'shipped','1993.10.27 00:00:00.000','1993.10.28 00:00:00.000','1993.12.15 00:00:00.000','y',4,120000,0,'hardware');
902 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V94S6400',1011,141,'waiting','1994.01.06 00:00:00.000',NULL,'1994.02.15 00:00:00.000','y',20,1980.72,0.400000005960464,'software');
903 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93H3009',1008,61,'shipped','1993.08.01 00:00:00.000','1993.12.02 00:00:00.000','1993.12.01 00:00:00.000','n',3,9000,0.0500000007450581,'software');
904 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93H0500',1008,61,'open','1993.12.12 00:00:00.000',NULL,'1993.12.15 00:00:00.000','n',3,16000,0.200000002980232,'hardware');
905 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93F0020',1009,61,'shipped','1993.10.10 00:00:00.000','1993.11.11 00:00:00.000','1993.11.11 00:00:00.000','n',1,490.69,0,'software');
906 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93I4700',1013,121,'open','1993.10.27 00:00:00.000',NULL,'1993.12.15 00:00:00.000','n',5,2693,0,'hardware');
907 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93B1002',1014,134,'shipped','1993.09.20 00:00:00.000','1993.09.21 00:00:00.000','1993.09.25 00:00:00.000','y',1,100.02,0,'software');
908 INSERT INTO SALES (PO_NUMBER,CUST_NO,SALES_REP,ORDER_STATUS,ORDER_DATE,SHIP_DATE,DATE_NEEDED,PAID,QTY_ORDERED,TOTAL_VALUE,DISCOUNT,ITEM_TYPE) VALUES('V93N5822',1015,134,'shipped','1993.12.18 00:00:00.000','1994.01.14 00:00:00.000',NULL,'n',2,1500,0,'software');
909 COMMIT;
910 /* Data Ends */
911
912 /* Index definitions for all user tables */
913
914 CREATE INDEX CUSTNAMEX ON CUSTOMER(CUSTOMER);
915 CREATE INDEX CUSTREGION ON CUSTOMER(COUNTRY, CITY);
916 CREATE DESCENDING INDEX BUDGETX ON DEPARTMENT(BUDGET);
917 CREATE INDEX NAMEX ON EMPLOYEE(LAST_NAME, FIRST_NAME);
918 CREATE DESCENDING INDEX MAXSALX ON JOB(JOB_COUNTRY, MAX_SALARY);
919 CREATE INDEX MINSALX ON JOB(JOB_COUNTRY, MIN_SALARY);
920 CREATE UNIQUE INDEX PRODTYPEX ON PROJECT(PRODUCT, PROJ_NAME);
921 CREATE DESCENDING INDEX CHANGEX ON SALARY_HISTORY(CHANGE_DATE);
922 CREATE INDEX UPDATERX ON SALARY_HISTORY(UPDATER_ID);
923 CREATE INDEX NEEDX ON SALES(DATE_NEEDED);
924 CREATE DESCENDING INDEX QTYX ON SALES(ITEM_TYPE, QTY_ORDERED);
925 CREATE INDEX SALESTATX ON SALES(ORDER_STATUS, PAID);
926 ALTER TABLE CUSTOMER ADD FOREIGN KEY (COUNTRY) REFERENCES COUNTRY (COUNTRY);
927 ALTER TABLE DEPARTMENT ADD FOREIGN KEY (HEAD_DEPT) REFERENCES DEPARTMENT (DEPT_NO);
928 ALTER TABLE DEPARTMENT ADD FOREIGN KEY (MNGR_NO) REFERENCES EMPLOYEE (EMP_NO);
929 ALTER TABLE EMPLOYEE ADD FOREIGN KEY (DEPT_NO) REFERENCES DEPARTMENT (DEPT_NO);
930 ALTER TABLE EMPLOYEE ADD FOREIGN KEY (JOB_CODE, JOB_GRADE, JOB_COUNTRY) REFERENCES JOB (JOB_CODE, JOB_GRADE, JOB_COUNTRY);
931 ALTER TABLE EMPLOYEE_PROJECT ADD FOREIGN KEY (EMP_NO) REFERENCES EMPLOYEE (EMP_NO);
932 ALTER TABLE EMPLOYEE_PROJECT ADD FOREIGN KEY (PROJ_ID) REFERENCES PROJECT (PROJ_ID);
933 ALTER TABLE JOB ADD FOREIGN KEY (JOB_COUNTRY) REFERENCES COUNTRY (COUNTRY);
934 ALTER TABLE PROJECT ADD FOREIGN KEY (TEAM_LEADER) REFERENCES EMPLOYEE (EMP_NO);
935 ALTER TABLE PROJ_DEPT_BUDGET ADD FOREIGN KEY (DEPT_NO) REFERENCES DEPARTMENT (DEPT_NO);
936 ALTER TABLE PROJ_DEPT_BUDGET ADD FOREIGN KEY (PROJ_ID) REFERENCES PROJECT (PROJ_ID);
937 ALTER TABLE SALARY_HISTORY ADD FOREIGN KEY (EMP_NO) REFERENCES EMPLOYEE (EMP_NO);
938 ALTER TABLE SALES ADD FOREIGN KEY (CUST_NO) REFERENCES CUSTOMER (CUST_NO);
939 ALTER TABLE SALES ADD FOREIGN KEY (SALES_REP) REFERENCES EMPLOYEE (EMP_NO);
940
941 CREATE SEQUENCE CUST_NO_GEN;
942 ALTER SEQUENCE CUST_NO_GEN RESTART WITH 1016;
943 CREATE SEQUENCE EMP_NO_GEN;
944 ALTER SEQUENCE EMP_NO_GEN RESTART WITH 158;
945 CREATE SEQUENCE FB$OUT_SEQ;
946 ALTER SEQUENCE FB$OUT_SEQ RESTART WITH 1;
947
948 /* View: DEPTLIST, Owner: SYSDBA */
949
950 CREATE VIEW DEPTLIST (
951 EMP_NO,
952 FIRST_NAME,
953 LAST_NAME,
954 PHONE_EXT,
955 HIRE_DATE,
956 DEPT_NO,
957 JOB_CODE,
958 JOB_GRADE,
959 JOB_COUNTRY,
960 SALARY,
961 FULL_NAME,
962 DEPT_PATH,
963 DEPT_KEY_PATH
964 ) AS
965 with recursive Depts As (
966 Select DEPT_NO, DEPARTMENT, HEAD_DEPT, cast(DEPARTMENT as VarChar(256)) as DEPT_PATH,
967 cast(DEPT_NO as VarChar(64)) as DEPT_KEY_PATH
968 From DEPARTMENT Where HEAD_DEPT is NULL
969 UNION ALL
970 Select D.DEPT_NO, D.DEPARTMENT, D.HEAD_DEPT, Depts.DEPT_PATH || ' / ' || D.DEPARTMENT as DEPT_PATH,
971 Depts.DEPT_KEY_PATH || ';' || D.DEPT_NO as DEPT_KEY_PATH
972 From DEPARTMENT D
973 JOIN Depts On D.HEAD_DEPT = Depts.DEPT_NO
974 )
975
976 Select distinct A.EMP_NO, A.FIRST_NAME, A.LAST_NAME, A.PHONE_EXT, A.HIRE_DATE, A.DEPT_NO, A.JOB_CODE,
977 A.JOB_GRADE, A.JOB_COUNTRY, A.SALARY, A.FULL_NAME, D.DEPT_PATH, D.DEPT_KEY_PATH
978 From EMPLOYEE A
979 JOIN Depts D On D.DEPT_NO = A.DEPT_NO
980 ;
981
982 /* View: PHONE_LIST, Owner: SYSDBA */
983
984 CREATE VIEW PHONE_LIST (
985 EMP_NO,
986 FIRST_NAME,
987 LAST_NAME,
988 PHONE_EXT,
989 LOCATION,
990 PHONE_NO
991 ) AS
992 SELECT
993 emp_no, first_name, last_name, phone_ext, location, phone_no
994 FROM employee, department
995 WHERE employee.dept_no = department.dept_no
996 ;
997
998 /* Add Domain Check Constraints */
999
1000
1001 ALTER DOMAIN BUDGET ADD CONSTRAINT
1002 CHECK (VALUE > 10000 AND VALUE <= 2000000);
1003
1004 ALTER DOMAIN CUSTNO ADD CONSTRAINT
1005 CHECK (VALUE > 1000);
1006 ALTER DOMAIN DEPTNO ADD CONSTRAINT
1007 CHECK (VALUE = '000' OR (VALUE > '0' AND VALUE <= '999') OR VALUE IS NULL);
1008
1009
1010
1011 ALTER DOMAIN JOBCODE ADD CONSTRAINT
1012 CHECK (VALUE > '99999');
1013 ALTER DOMAIN JOBGRADE ADD CONSTRAINT
1014 CHECK (VALUE BETWEEN 0 AND 6);
1015
1016
1017 ALTER DOMAIN PONUMBER ADD CONSTRAINT
1018 CHECK (VALUE STARTING WITH 'V');
1019 ALTER DOMAIN PRODTYPE ADD CONSTRAINT
1020 CHECK (VALUE IN ('software', 'hardware', 'other', 'N/A'));
1021 ALTER DOMAIN PROJNO ADD CONSTRAINT
1022 CHECK (VALUE = UPPER (VALUE));
1023 ALTER DOMAIN SALARY ADD CONSTRAINT
1024 CHECK (VALUE > 0);
1025 ALTER TABLE JOB ADD
1026 CHECK (min_salary < max_salary);
1027
1028 ALTER TABLE JOB ADD
1029 CHECK (min_salary < max_salary);
1030
1031 ALTER TABLE EMPLOYEE ADD
1032 CHECK ( salary >= (SELECT min_salary FROM job WHERE
1033 job.job_code = employee.job_code AND
1034 job.job_grade = employee.job_grade AND
1035 job.job_country = employee.job_country) AND
1036 salary <= (SELECT max_salary FROM job WHERE
1037 job.job_code = employee.job_code AND
1038 job.job_grade = employee.job_grade AND
1039 job.job_country = employee.job_country));
1040
1041 ALTER TABLE PROJ_DEPT_BUDGET ADD
1042 CHECK (FISCAL_YEAR >= 1993);
1043
1044 ALTER TABLE SALARY_HISTORY ADD
1045 CHECK (percent_change between -50 and 50);
1046
1047 ALTER TABLE CUSTOMER ADD
1048 CHECK (on_hold IS NULL OR on_hold = '*');
1049
1050 ALTER TABLE SALES ADD
1051 CHECK (order_status in
1052 ('new', 'open', 'shipped', 'waiting'));
1053
1054 ALTER TABLE SALES ADD
1055 CHECK (ship_date >= order_date OR ship_date IS NULL);
1056
1057 ALTER TABLE SALES ADD
1058 CHECK (date_needed > order_date OR date_needed IS NULL);
1059
1060 ALTER TABLE SALES ADD
1061 CHECK (paid in ('y', 'n'));
1062
1063 ALTER TABLE SALES ADD
1064 CHECK (qty_ordered >= 1);
1065
1066 ALTER TABLE SALES ADD
1067 CHECK (total_value >= 0);
1068
1069 ALTER TABLE SALES ADD
1070 CHECK (discount >= 0 AND discount <= 1);
1071
1072 ALTER TABLE SALES ADD
1073 CHECK (NOT (order_status = 'shipped' AND ship_date IS NULL));
1074
1075 ALTER TABLE SALES ADD
1076 CHECK (NOT (order_status = 'shipped' AND
1077 EXISTS (SELECT on_hold FROM customer
1078 WHERE customer.cust_no = sales.cust_no
1079 AND customer.on_hold = '*')));
1080
1081
1082 /* Exceptions */
1083
1084 CREATE EXCEPTION CUSTOMER_CHECK 'Overdue balance -- can not ship.';
1085 CREATE EXCEPTION CUSTOMER_ON_HOLD 'This customer is on hold.';
1086 CREATE EXCEPTION ORDER_ALREADY_SHIPPED 'Order status is "shipped."';
1087 CREATE EXCEPTION REASSIGN_SALES 'Reassign the sales records before deleting this employee.';
1088 CREATE EXCEPTION UNKNOWN_EMP_ID 'Invalid employee number or project id.';
1089 COMMIT WORK;
1090 SET AUTODDL OFF;
1091 SET TERM ^ ;
1092
1093 SET TERM ; ^
1094 COMMIT WORK;
1095 SET AUTODDL ON;
1096 COMMIT WORK;
1097 SET AUTODDL OFF;
1098 SET TERM ^ ;
1099
1100 /* Stored procedures Definitions*/
1101
1102 CREATE PROCEDURE SHOW_LANGS
1103 (
1104 CODE VARCHAR(5) CHARACTER SET NONE,
1105 GRADE SMALLINT,
1106 CTY VARCHAR(15) CHARACTER SET NONE
1107 )
1108 RETURNS
1109 (
1110 LANGUAGES VARCHAR(15) CHARACTER SET NONE
1111 )
1112 AS
1113 BEGIN SUSPEND; EXIT; END
1114
1115 ^
1116
1117 CREATE PROCEDURE ADD_EMP_PROJ
1118 (
1119 EMP_NO SMALLINT,
1120 PROJ_ID CHAR(5) CHARACTER SET NONE
1121 )
1122 AS
1123 BEGIN EXIT; END
1124
1125 ^
1126
1127 CREATE PROCEDURE ALL_LANGS
1128 RETURNS
1129 (
1130 CODE VARCHAR(5) CHARACTER SET NONE,
1131 GRADE VARCHAR(5) CHARACTER SET NONE,
1132 COUNTRY VARCHAR(15) CHARACTER SET NONE,
1133 LANG VARCHAR(15) CHARACTER SET NONE
1134 )
1135 AS
1136 BEGIN SUSPEND; EXIT; END
1137
1138 ^
1139
1140 CREATE PROCEDURE DELETE_EMPLOYEE
1141 (
1142 EMP_NUM INTEGER
1143 )
1144 AS
1145 BEGIN EXIT; END
1146
1147 ^
1148
1149 CREATE PROCEDURE DEPT_BUDGET
1150 (
1151 DNO CHAR(3) CHARACTER SET NONE
1152 )
1153 RETURNS
1154 (
1155 TOT DECIMAL(12, 2)
1156 )
1157 AS
1158 BEGIN SUSPEND; EXIT; END
1159
1160 ^
1161
1162 CREATE PROCEDURE GET_EMP_PROJ
1163 (
1164 EMP_NO SMALLINT
1165 )
1166 RETURNS
1167 (
1168 PROJ_ID CHAR(5) CHARACTER SET NONE
1169 )
1170 AS
1171 BEGIN SUSPEND; EXIT; END
1172
1173 ^
1174
1175 CREATE PROCEDURE "Has Space"
1176 (
1177 ARG1 INTEGER
1178 )
1179 AS
1180 BEGIN EXIT; END
1181
1182 ^
1183
1184 CREATE PROCEDURE MAIL_LABEL
1185 (
1186 CUST_NO INTEGER
1187 )
1188 RETURNS
1189 (
1190 LINE1 CHAR(40) CHARACTER SET NONE,
1191 LINE2 CHAR(40) CHARACTER SET NONE,
1192 LINE3 CHAR(40) CHARACTER SET NONE,
1193 LINE4 CHAR(40) CHARACTER SET NONE,
1194 LINE5 CHAR(40) CHARACTER SET NONE,
1195 LINE6 CHAR(40) CHARACTER SET NONE
1196 )
1197 AS
1198 BEGIN SUSPEND; EXIT; END
1199
1200 ^
1201
1202 CREATE PROCEDURE ORG_CHART
1203 RETURNS
1204 (
1205 HEAD_DEPT CHAR(25) CHARACTER SET NONE,
1206 DEPARTMENT CHAR(25) CHARACTER SET NONE,
1207 MNGR_NAME CHAR(20) CHARACTER SET NONE,
1208 TITLE CHAR(5) CHARACTER SET NONE,
1209 EMP_CNT INTEGER
1210 )
1211 AS
1212 BEGIN SUSPEND; EXIT; END
1213
1214 ^
1215
1216 CREATE PROCEDURE SHIP_ORDER
1217 (
1218 PO_NUM CHAR(8) CHARACTER SET NONE
1219 )
1220 AS
1221 BEGIN EXIT; END
1222
1223 ^
1224
1225 CREATE PROCEDURE SUB_TOT_BUDGET
1226 (
1227 HEAD_DEPT CHAR(3) CHARACTER SET NONE
1228 )
1229 RETURNS
1230 (
1231 TOT_BUDGET DECIMAL(12, 2),
1232 AVG_BUDGET DECIMAL(12, 2),
1233 MIN_BUDGET DECIMAL(12, 2),
1234 MAX_BUDGET DECIMAL(12, 2)
1235 )
1236 AS
1237 BEGIN SUSPEND; EXIT; END
1238
1239 ^
1240
1241 CREATE PROCEDURE "UC SPACE"
1242 (
1243 ARG1 INTEGER
1244 )
1245 AS
1246 BEGIN EXIT; END
1247
1248 ^
1249
1250 CREATE PROCEDURE "iCASE"
1251 AS
1252 BEGIN EXIT; END
1253
1254 ^
1255
1256 SET TERM ; ^
1257 COMMIT WORK;
1258 SET AUTODDL ON;
1259 COMMIT WORK;
1260 SET AUTODDL OFF;
1261 SET TERM ^ ;
1262
1263 SET TERM ; ^
1264 COMMIT WORK;
1265 SET AUTODDL ON;
1266 SET TERM ^ ;
1267
1268
1269 /* Triggers only will work for SQL triggers */
1270
1271 CREATE TRIGGER SET_CUST_NO FOR CUSTOMER
1272 ACTIVE BEFORE INSERT POSITION 0
1273 AS
1274 BEGIN
1275 if (new.cust_no is null) then
1276 new.cust_no = gen_id(cust_no_gen, 1);
1277 END
1278 ^
1279 CREATE TRIGGER SET_EMP_NO FOR EMPLOYEE
1280 ACTIVE BEFORE INSERT POSITION 0
1281 AS
1282 BEGIN
1283 if (new.emp_no is null) then
1284 new.emp_no = gen_id(emp_no_gen, 1);
1285 END
1286 ^
1287 CREATE TRIGGER SAVE_SALARY_CHANGE FOR EMPLOYEE
1288 ACTIVE AFTER UPDATE POSITION 0
1289 AS
1290 BEGIN
1291 IF (old.salary <> new.salary) THEN
1292 INSERT INTO salary_history
1293 (emp_no, change_date, updater_id, old_salary, percent_change)
1294 VALUES (
1295 old.emp_no,
1296 'NOW',
1297 user,
1298 old.salary,
1299 (new.salary - old.salary) * 100 / old.salary);
1300 END
1301 ^
1302 CREATE TRIGGER POST_NEW_ORDER FOR SALES
1303 ACTIVE AFTER INSERT POSITION 0
1304 AS
1305 BEGIN
1306 POST_EVENT 'new_order';
1307 END
1308 ^
1309 COMMIT WORK ^
1310 SET TERM ;^
1311 COMMIT WORK;
1312 SET AUTODDL OFF;
1313 SET TERM ^ ;
1314
1315 /* Stored procedure Bodies */
1316
1317
1318 ALTER PROCEDURE SHOW_LANGS
1319 (
1320 CODE VARCHAR(5) CHARACTER SET NONE,
1321 GRADE SMALLINT,
1322 CTY VARCHAR(15) CHARACTER SET NONE
1323 )
1324 RETURNS
1325 (
1326 LANGUAGES VARCHAR(15) CHARACTER SET NONE
1327 )
1328 AS
1329 DECLARE VARIABLE i INTEGER;
1330 BEGIN
1331 i = 1;
1332 WHILE (i <= 5) DO
1333 BEGIN
1334 SELECT language_req[:i] FROM joB
1335 WHERE ((job_code = :code) AND (job_grade = :grade) AND (job_country = :cty)
1336 AND (language_req IS NOT NULL))
1337 INTO :languages;
1338 IF (languages = ' ') THEN /* Prints 'NULL' instead of blanks */
1339 languages = 'NULL';
1340 i = i +1;
1341 SUSPEND;
1342 END
1343 END
1344 ^
1345
1346
1347 ALTER PROCEDURE ADD_EMP_PROJ
1348 (
1349 EMP_NO SMALLINT,
1350 PROJ_ID CHAR(5) CHARACTER SET NONE
1351 )
1352 AS
1353 BEGIN
1354 BEGIN
1355 INSERT INTO employee_project (emp_no, proj_id) VALUES (:emp_no, :proj_id);
1356 WHEN SQLCODE -530 DO
1357 EXCEPTION unknown_emp_id;
1358 END
1359 END
1360 ^
1361
1362
1363 ALTER PROCEDURE ALL_LANGS
1364 RETURNS
1365 (
1366 CODE VARCHAR(5) CHARACTER SET NONE,
1367 GRADE VARCHAR(5) CHARACTER SET NONE,
1368 COUNTRY VARCHAR(15) CHARACTER SET NONE,
1369 LANG VARCHAR(15) CHARACTER SET NONE
1370 )
1371 AS
1372 BEGIN
1373 FOR SELECT job_code, job_grade, job_country FROM job
1374 INTO :code, :grade, :country
1375
1376 DO
1377 BEGIN
1378 FOR SELECT languages FROM show_langs
1379 (:code, :grade, :country) INTO :lang DO
1380 SUSPEND;
1381 /* Put nice separators between rows */
1382 code = '=====';
1383 grade = '=====';
1384 country = '===============';
1385 lang = '==============';
1386 SUSPEND;
1387 END
1388 END
1389 ^
1390
1391
1392 ALTER PROCEDURE DELETE_EMPLOYEE
1393 (
1394 EMP_NUM INTEGER
1395 )
1396 AS
1397 DECLARE VARIABLE any_sales INTEGER;
1398 BEGIN
1399 any_sales = 0;
1400
1401 /*
1402 * If there are any sales records referencing this employee,
1403 * can't delete the employee until the sales are re-assigned
1404 * to another employee or changed to NULL.
1405 */
1406 SELECT count(po_number)
1407 FROM sales
1408 WHERE sales_rep = :emp_num
1409 INTO :any_sales;
1410
1411 IF (any_sales > 0) THEN
1412 BEGIN
1413 EXCEPTION reassign_sales;
1414 END
1415
1416 /*
1417 * If the employee is a manager, update the department.
1418 */
1419 UPDATE department
1420 SET mngr_no = NULL
1421 WHERE mngr_no = :emp_num;
1422
1423 /*
1424 * If the employee is a project leader, update project.
1425 */
1426 UPDATE project
1427 SET team_leader = NULL
1428 WHERE team_leader = :emp_num;
1429
1430 /*
1431 * Delete the employee from any projects.
1432 */
1433 DELETE FROM employee_project
1434 WHERE emp_no = :emp_num;
1435
1436 /*
1437 * Delete old salary records.
1438 */
1439 DELETE FROM salary_history
1440 WHERE emp_no = :emp_num;
1441
1442 /*
1443 * Delete the employee.
1444 */
1445 DELETE FROM employee
1446 WHERE emp_no = :emp_num;
1447
1448 END
1449 ^
1450
1451
1452 ALTER PROCEDURE DEPT_BUDGET
1453 (
1454 DNO CHAR(3) CHARACTER SET NONE
1455 )
1456 RETURNS
1457 (
1458 TOT DECIMAL(12, 2)
1459 )
1460 AS
1461 DECLARE VARIABLE sumb DECIMAL(12, 2);
1462 DECLARE VARIABLE rdno CHAR(3);
1463 DECLARE VARIABLE cnt INTEGER;
1464 BEGIN
1465 tot = 0;
1466
1467 SELECT budget FROM department WHERE dept_no = :dno INTO :tot;
1468
1469 SELECT count(budget) FROM department WHERE head_dept = :dno INTO :cnt;
1470
1471 IF (cnt = 0) THEN
1472 SUSPEND;
1473
1474 FOR SELECT dept_no
1475 FROM department
1476 WHERE head_dept = :dno
1477 INTO :rdno
1478 DO
1479 BEGIN
1480 EXECUTE PROCEDURE dept_budget :rdno RETURNING_VALUES :sumb;
1481 tot = tot + sumb;
1482 END
1483
1484 SUSPEND;
1485 END
1486 ^
1487
1488
1489 ALTER PROCEDURE GET_EMP_PROJ
1490 (
1491 EMP_NO SMALLINT
1492 )
1493 RETURNS
1494 (
1495 PROJ_ID CHAR(5) CHARACTER SET NONE
1496 )
1497 AS
1498 BEGIN
1499 FOR SELECT proj_id
1500 FROM employee_project
1501 WHERE emp_no = :emp_no
1502 INTO :proj_id
1503 DO
1504 SUSPEND;
1505 END
1506 ^
1507
1508
1509 ALTER PROCEDURE "Has Space"
1510 (
1511 ARG1 INTEGER
1512 )
1513 AS
1514 Begin End
1515 ^
1516
1517
1518 ALTER PROCEDURE MAIL_LABEL
1519 (
1520 CUST_NO INTEGER
1521 )
1522 RETURNS
1523 (
1524 LINE1 CHAR(40) CHARACTER SET NONE,
1525 LINE2 CHAR(40) CHARACTER SET NONE,
1526 LINE3 CHAR(40) CHARACTER SET NONE,
1527 LINE4 CHAR(40) CHARACTER SET NONE,
1528 LINE5 CHAR(40) CHARACTER SET NONE,
1529 LINE6 CHAR(40) CHARACTER SET NONE
1530 )
1531 AS
1532 DECLARE VARIABLE customer VARCHAR(25);
1533 DECLARE VARIABLE first_name VARCHAR(15);
1534 DECLARE VARIABLE last_name VARCHAR(20);
1535 DECLARE VARIABLE addr1 VARCHAR(30);
1536 DECLARE VARIABLE addr2 VARCHAR(30);
1537 DECLARE VARIABLE city VARCHAR(25);
1538 DECLARE VARIABLE state VARCHAR(15);
1539 DECLARE VARIABLE country VARCHAR(15);
1540 DECLARE VARIABLE postcode VARCHAR(12);
1541 DECLARE VARIABLE cnt INTEGER;
1542 BEGIN
1543 line1 = '';
1544 line2 = '';
1545 line3 = '';
1546 line4 = '';
1547 line5 = '';
1548 line6 = '';
1549
1550 SELECT customer, contact_first, contact_last, address_line1,
1551 address_line2, city, state_province, country, postal_code
1552 FROM CUSTOMER
1553 WHERE cust_no = :cust_no
1554 INTO :customer, :first_name, :last_name, :addr1, :addr2,
1555 :city, :state, :country, :postcode;
1556
1557 IF (customer IS NOT NULL) THEN
1558 line1 = customer;
1559 IF (first_name IS NOT NULL) THEN
1560 line2 = first_name || ' ' || last_name;
1561 ELSE
1562 line2 = last_name;
1563 IF (addr1 IS NOT NULL) THEN
1564 line3 = addr1;
1565 IF (addr2 IS NOT NULL) THEN
1566 line4 = addr2;
1567
1568 IF (country = 'USA') THEN
1569 BEGIN
1570 IF (city IS NOT NULL) THEN
1571 line5 = city || ', ' || state || ' ' || postcode;
1572 ELSE
1573 line5 = state || ' ' || postcode;
1574 END
1575 ELSE
1576 BEGIN
1577 IF (city IS NOT NULL) THEN
1578 line5 = city || ', ' || state;
1579 ELSE
1580 line5 = state;
1581 line6 = country || ' ' || postcode;
1582 END
1583
1584 SUSPEND;
1585 END
1586 ^
1587
1588
1589 ALTER PROCEDURE ORG_CHART
1590 RETURNS
1591 (
1592 HEAD_DEPT CHAR(25) CHARACTER SET NONE,
1593 DEPARTMENT CHAR(25) CHARACTER SET NONE,
1594 MNGR_NAME CHAR(20) CHARACTER SET NONE,
1595 TITLE CHAR(5) CHARACTER SET NONE,
1596 EMP_CNT INTEGER
1597 )
1598 AS
1599 DECLARE VARIABLE mngr_no INTEGER;
1600 DECLARE VARIABLE dno CHAR(3);
1601 BEGIN
1602 FOR SELECT h.department, d.department, d.mngr_no, d.dept_no
1603 FROM department d
1604 LEFT OUTER JOIN department h ON d.head_dept = h.dept_no
1605 ORDER BY d.dept_no
1606 INTO :head_dept, :department, :mngr_no, :dno
1607 DO
1608 BEGIN
1609 IF (:mngr_no IS NULL) THEN
1610 BEGIN
1611 mngr_name = '--TBH--';
1612 title = '';
1613 END
1614
1615 ELSE
1616 SELECT full_name, job_code
1617 FROM employee
1618 WHERE emp_no = :mngr_no
1619 INTO :mngr_name, :title;
1620
1621 SELECT COUNT(emp_no)
1622 FROM employee
1623 WHERE dept_no = :dno
1624 INTO :emp_cnt;
1625
1626 SUSPEND;
1627 END
1628 END
1629 ^
1630
1631
1632 ALTER PROCEDURE SHIP_ORDER
1633 (
1634 PO_NUM CHAR(8) CHARACTER SET NONE
1635 )
1636 AS
1637 DECLARE VARIABLE ord_stat CHAR(7);
1638 DECLARE VARIABLE hold_stat CHAR(1);
1639 DECLARE VARIABLE cust_no INTEGER;
1640 DECLARE VARIABLE any_po CHAR(8);
1641 BEGIN
1642 SELECT s.order_status, c.on_hold, c.cust_no
1643 FROM sales s, customer c
1644 WHERE po_number = :po_num
1645 AND s.cust_no = c.cust_no
1646 INTO :ord_stat, :hold_stat, :cust_no;
1647
1648 /* This purchase order has been already shipped. */
1649 IF (ord_stat = 'shipped') THEN
1650 BEGIN
1651 EXCEPTION order_already_shipped;
1652 END
1653
1654 /* Customer is on hold. */
1655 ELSE IF (hold_stat = '*') THEN
1656 BEGIN
1657 EXCEPTION customer_on_hold;
1658 END
1659
1660 /*
1661 * If there is an unpaid balance on orders shipped over 2 months ago,
1662 * put the customer on hold.
1663 */
1664 FOR SELECT po_number
1665 FROM sales
1666 WHERE cust_no = :cust_no
1667 AND order_status = 'shipped'
1668 AND paid = 'n'
1669 AND ship_date < CAST('NOW' AS TIMESTAMP) - 60
1670 INTO :any_po
1671 DO
1672 BEGIN
1673 EXCEPTION customer_check;
1674
1675 UPDATE customer
1676 SET on_hold = '*'
1677 WHERE cust_no = :cust_no;
1678
1679 END
1680
1681 /*
1682 * Ship the order.
1683 */
1684 UPDATE sales
1685 SET order_status = 'shipped', ship_date = 'NOW'
1686 WHERE po_number = :po_num;
1687
1688 END
1689 ^
1690
1691
1692 ALTER PROCEDURE SUB_TOT_BUDGET
1693 (
1694 HEAD_DEPT CHAR(3) CHARACTER SET NONE
1695 )
1696 RETURNS
1697 (
1698 TOT_BUDGET DECIMAL(12, 2),
1699 AVG_BUDGET DECIMAL(12, 2),
1700 MIN_BUDGET DECIMAL(12, 2),
1701 MAX_BUDGET DECIMAL(12, 2)
1702 )
1703 AS
1704 BEGIN
1705 SELECT SUM(budget), AVG(budget), MIN(budget), MAX(budget)
1706 FROM department
1707 WHERE head_dept = :head_dept
1708 INTO :tot_budget, :avg_budget, :min_budget, :max_budget;
1709 SUSPEND;
1710 END
1711 ^
1712
1713
1714 ALTER PROCEDURE "UC SPACE"
1715 (
1716 ARG1 INTEGER
1717 )
1718 AS
1719 Begin End
1720 ^
1721
1722
1723 ALTER PROCEDURE "iCASE"
1724 AS
1725 Begin End
1726 ^
1727
1728 SET TERM ; ^
1729 COMMIT WORK;
1730 SET AUTODDL ON;
1731 COMMIT WORK;
1732 SET AUTODDL OFF;
1733 SET TERM ^ ;
1734
1735
1736 SET TERM ; ^
1737 COMMIT WORK;
1738 SET AUTODDL ON;
1739
1740 /* Comments on System Objects */
1741
1742 COMMENT ON CHARACTER SET UTF8 IS 'Default Character set';
1743
1744 /* Grant Roles for this database */
1745
1746
1747 /* Grant permissions for this database */
1748
1749 GRANT REFERENCES ON TABLE COUNTRIES TO USER BOB ;
1750 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE COUNTRY TO USER PUBLIC WITH GRANT OPTION ;
1751 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE CUSTOMER TO USER PUBLIC WITH GRANT OPTION ;
1752 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE DEPARTMENT TO USER PUBLIC WITH GRANT OPTION ;
1753 GRANT SELECT ON TABLE EMPLOYEE TO USER ALICE WITH GRANT OPTION GRANTED BY BOB ;
1754 GRANT SELECT,Update(FIRST_NAME,LAST_NAME) ON TABLE EMPLOYEE TO USER BOB ;
1755 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE EMPLOYEE TO USER PUBLIC WITH GRANT OPTION ;
1756 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE EMPLOYEE_PROJECT TO USER PUBLIC WITH GRANT OPTION ;
1757 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE JOB TO USER PUBLIC WITH GRANT OPTION ;
1758 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE PHONE_LIST TO USER PUBLIC WITH GRANT OPTION ;
1759 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE PROJECT TO USER PUBLIC WITH GRANT OPTION ;
1760 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE PROJ_DEPT_BUDGET TO USER PUBLIC WITH GRANT OPTION ;
1761 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE SALARY_HISTORY TO USER PUBLIC WITH GRANT OPTION ;
1762 GRANT DELETE,INSERT,REFERENCES,SELECT,UPDATE ON TABLE SALES TO USER PUBLIC WITH GRANT OPTION ;
1763 GRANT RDB$ADMIN TO ALICE;
1764
1765 GRANT RDB$ADMIN TO BOB;
1766
1767 GRANT EXECUTE ON PROCEDURE ADD_EMP_PROJ TO USER PUBLIC WITH GRANT OPTION ;
1768 GRANT EXECUTE ON PROCEDURE ALL_LANGS TO USER PUBLIC WITH GRANT OPTION ;
1769 GRANT EXECUTE ON PROCEDURE DELETE_EMPLOYEE TO USER PUBLIC WITH GRANT OPTION ;
1770 GRANT EXECUTE ON PROCEDURE DEPT_BUDGET TO USER PUBLIC WITH GRANT OPTION ;
1771 GRANT EXECUTE ON PROCEDURE GET_EMP_PROJ TO USER PUBLIC WITH GRANT OPTION ;
1772 GRANT EXECUTE ON PROCEDURE MAIL_LABEL TO USER PUBLIC WITH GRANT OPTION ;
1773 GRANT EXECUTE ON PROCEDURE ORG_CHART TO USER PUBLIC WITH GRANT OPTION ;
1774 GRANT EXECUTE ON PROCEDURE SHIP_ORDER TO USER PUBLIC WITH GRANT OPTION ;
1775 GRANT EXECUTE ON PROCEDURE SHOW_LANGS TO USER PUBLIC WITH GRANT OPTION ;
1776 GRANT EXECUTE ON PROCEDURE SUB_TOT_BUDGET TO USER PUBLIC WITH GRANT OPTION ;
1777