1
+ -- *****************************************************
2
+ -- * Simple database model for AcmePools application.
3
+ -- *
4
+ -- * Author: J. Juneau
5
+ -- * Description: Ready for summer! Run this SQL in
6
+ -- * your favorite Apache derby schema if you are
7
+ -- * not using the NetBeans sample database
8
+ -- *****************************************************
9
+
10
+ CREATE TABLE CUSTOMER (
11
+ CUSTOMER_ID INTEGER NOT NULL ,
12
+ DISCOUNT_CODE CHAR (1 ) NOT NULL ,
13
+ ZIP VARCHAR (10 ) NOT NULL ,
14
+ " NAME" VARCHAR (30 ),
15
+ ADDRESSLINE1 VARCHAR (30 ),
16
+ ADDRESSLINE2 VARCHAR (30 ),
17
+ CITY VARCHAR (25 ),
18
+ " STATE" CHAR (2 ),
19
+ PHONE CHAR (12 ),
20
+ FAX CHAR (12 ),
21
+ EMAIL VARCHAR (40 ),
22
+ CREDIT_LIMIT INTEGER ,
23
+ PRIMARY KEY (CUSTOMER_ID));
24
+
25
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
26
+ VALUES (1 , ' N' , ' 95117' , ' Jumbo Eagle Corp' , ' 111 E. Las Olivas Blvd' , ' Suite 51' , ' Fort Lauderdale' , ' FL' , ' 305-555-0188' , ' 305-555-0189' , ' jumboeagle@example.com' , 100000 );
27
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
28
+ VALUES (2 , ' M' , ' 95035' , ' New Enterprises' , ' 9754 Main Street USA' , ' P.O. Box 567' , ' Miami' , ' FL' , ' 305-555-0148' , ' 305-555-0149' , ' www.new.example.com' , 50000 );
29
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
30
+ VALUES (25 , ' M' , ' 85638' , ' Wren Computers' , ' 8989 Red Albatross Drive' , ' Suite 9897' , ' Houston' , ' TX' , ' 214-555-0133' , ' 214-555-0134' , ' www.wrencomp.example.com' , 25000 );
31
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
32
+ VALUES (3 , ' L' , ' 12347' , ' Small Bill Company' , ' 8585 South Upper Murray Drive' , ' P.O. Box 456' , ' Alanta' , ' GA' , ' 555-555-0175' , ' 555-555-0176' , ' www.smallbill.example.com' , 90000 );
33
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
34
+ VALUES (36 , ' H' , ' 94401' , ' Bob Hosting Corp.' , ' 65653 Lake Road' , ' Suite 2323' , ' San Mateo' , ' CA' , ' 650-555-0160' , ' 650-555-0161' , ' www.bobhostcorp.example.com' , 65000 );
35
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
36
+ VALUES (106 , ' L' , ' 95035' , ' Early CentralComp' , ' 829 E Flex Drive' , ' Suite 853' , ' San Jose' , ' CA' , ' 408-555-0157' , ' 408-555-0150' , ' www.centralcomp.example.com' , 26500 );
37
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
38
+ VALUES (149 , ' L' , ' 95117' , ' John Valley Computers' , ' 4381 Kelly Valley Ave' , ' Suite 77' , ' Santa Clara' , ' CA' , ' 408-555-0169' , ' 408-555-0167' , ' www.johnvalley.example.com' , 70000 );
39
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
40
+ VALUES (863 , ' N' , ' 94401' , ' Big Network Systems' , ' 456 444th Street' , ' Suite 45' , ' Redwood City' , ' CA' , ' 650-555-0181' , ' 650-555-0180' , ' www.bignet.example.com' , 25000 );
41
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
42
+ VALUES (777 , ' L' , ' 48128' , ' West Valley Inc.' , ' 88 Northsouth Drive' , ' Building C' , ' Dearborn' , ' MI' , ' 313-555-0172' , ' 313-555-0171' , ' www.westv.example.com' , 100000 );
43
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
44
+ VALUES (753 , ' H' , ' 48128' , ' Zed Motor Co' , ' 2267 NE Michigan Ave' , ' Building 21' , ' Dearborn' , ' MI' , ' 313-555-0151' , ' 313-555-0152' , ' www.parts@ford.example.com' , 5000000 );
45
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
46
+ VALUES (722 , ' N' , ' 48124' , ' Big Car Parts' , ' 52963 Notouter Dr' , ' Suite 35' , ' Detroit' , ' MI' , ' 313-555-0144' , ' 313-555-0145' , ' www.bparts.example.com' , 50000 );
47
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
48
+ VALUES (409 , ' L' , ' 10095' , ' Old Media Productions' , ' 4400 527th Street' , ' Suite 562' , ' New York' , ' NY' , ' 212-555-0110' , ' 212-555-0111' , ' www.oldmedia.example.com' , 10000 );
49
+ INSERT INTO CUSTOMER (CUSTOMER_ID, DISCOUNT_CODE, ZIP, " NAME" , ADDRESSLINE1, ADDRESSLINE2, CITY, " STATE" , PHONE, FAX, EMAIL, CREDIT_LIMIT)
50
+ VALUES (410 , ' M' , ' 10096' , ' Yankee Computer Repair Ltd' , ' 9653 211th Ave' , ' Floor 4' , ' New York' , ' NY' , ' 212-555-0191' , ' 212-555-0197' , ' www.nycompltd@repair.example.com' , 25000 );
51
+
52
+ CREATE TABLE DISCOUNT_CODE (DISCOUNT_CODE CHAR (1 ) NOT NULL , RATE DECIMAL (4 , 2 ), PRIMARY KEY (DISCOUNT_CODE));
53
+
54
+ INSERT INTO DISCOUNT_CODE (DISCOUNT_CODE, RATE)
55
+ VALUES (' H' , 16 .00 );
56
+ INSERT INTO DISCOUNT_CODE (DISCOUNT_CODE, RATE)
57
+ VALUES (' L' , 7 .00 );
58
+ INSERT INTO DISCOUNT_CODE (DISCOUNT_CODE, RATE)
59
+ VALUES (' M' , 11 .00 );
60
+ INSERT INTO DISCOUNT_CODE (DISCOUNT_CODE, RATE)
61
+ VALUES (' N' , 0 .00 );
62
+
63
+ CREATE TABLE MICRO_MARKET (ZIP_CODE VARCHAR (10 ) NOT NULL , RADIUS DOUBLE, AREA_LENGTH DOUBLE, AREA_WIDTH DOUBLE, PRIMARY KEY (ZIP_CODE));
64
+
65
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
66
+ VALUES (' 95051' , 255 .59 , 689 .856 , 478 .479 );
67
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
68
+ VALUES (' 94043' , 157 .869 , 385 .821 , 147 .538 );
69
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
70
+ VALUES (' 85638' , 758 .648 , 328 .963 , 482 .164 );
71
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
72
+ VALUES (' 12347' , 475 .965 , 385 .849 , 146 .937 );
73
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
74
+ VALUES (' 94401' , 368 .386 , 285 .848 , 173 .794 );
75
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
76
+ VALUES (' 95035' , 683 .396 , 472 .859 , 379 .757 );
77
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
78
+ VALUES (' 95117' , 755 .778 , 547 .967 , 468 .858 );
79
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
80
+ VALUES (' 48128' , 684 .675 , 475 .854 , 408 .074 );
81
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
82
+ VALUES (' 48124' , 753 .765 , 487 .664 , 456 .632 );
83
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
84
+ VALUES (' 10095' , 1987 .854 , 975 .875 , 865 .681 );
85
+ INSERT INTO MICRO_MARKET (ZIP_CODE, RADIUS, AREA_LENGTH, AREA_WIDTH)
86
+ VALUES (' 10096' , 1876 .766 , 955 .666 , 923 .556 );
87
+
88
+
89
+ create table pool_customer (
90
+ id int primary key ,
91
+ pool_id int ,
92
+ customer_id int );
93
+
94
+ create table job (
95
+ id int primary key ,
96
+ customer_id int ,
97
+ description clob,
98
+ est_hours float,
99
+ cost numeric );
100
+
101
+
102
+
103
+ create table pool (
104
+ id int primary key ,
105
+ style varchar (10 ),
106
+ shape varchar (10 ),
107
+ length float,
108
+ width float,
109
+ radius float,
110
+ gallons float);
111
+
112
+ alter table pool_customer
113
+ add constraint pool_customer_fk
114
+ foreign key (pool_id) references pool(id);
115
+
116
+ alter table pool_customer
117
+ add constraint pool_customer_fk2
118
+ foreign key (customer_id) references customer(customer_id);
119
+
120
+ alter table job
121
+ add constraint job_fk
122
+ foreign key (customer_id) references pool_customer(id);
123
+
124
+ insert into pool values (
125
+ 1 ,
126
+ ' ABOVE' ,
127
+ ' ROUND' ,
128
+ 0 ,
129
+ 0 ,
130
+ 24 ,
131
+ 61072 .56 );
132
+
133
+ insert into pool values (
134
+ 2 ,
135
+ ' INGROUND' ,
136
+ ' ROUND' ,
137
+ 32 ,
138
+ 16 ,
139
+ 0 ,
140
+ 23040 );
141
+
142
+ insert into pool_customer values (
143
+ 1 ,
144
+ 1 ,
145
+ 1 );
146
+
147
+ insert into pool_customer values (
148
+ 2 ,
149
+ 2 ,
150
+ 2 );
151
+
152
+ -- Add support for data export
153
+ create table column_model (
154
+ id int primary key ,
155
+ column_name varchar (30 ),
156
+ column_label varchar (150 ));
157
+
158
+
159
+ insert into column_model values (
160
+ 1 ,
161
+ ' addressline1' ,
162
+ ' Address Line 1' );
163
+
164
+ insert into column_model values (
165
+ 2 ,
166
+ ' addressline2' ,
167
+ ' Address Line 2' );
168
+
169
+ insert into column_model values (
170
+ 3 ,
171
+ ' city' ,
172
+ ' City' );
173
+
174
+ insert into column_model values (
175
+ 4 ,
176
+ ' creditLimit' ,
177
+ ' Credit Limit' );
178
+
179
+ insert into column_model values (
180
+ 5 ,
181
+ ' customerId' ,
182
+ ' Customer Id' );
183
+
184
+ insert into column_model values (
185
+ 6 ,
186
+ ' discountCode' ,
187
+ ' Discount Code' );
188
+
189
+ insert into column_model values (
190
+ 7 ,
191
+ ' email' ,
192
+ ' Email' );
193
+
194
+ insert into column_model values (
195
+ 8 ,
196
+ ' fax' ,
197
+ ' Fax' );
198
+
199
+ insert into column_model values (
200
+ 9 ,
201
+ ' name' ,
202
+ ' Name' );
203
+
204
+ insert into column_model values (
205
+ 10 ,
206
+ ' phone' ,
207
+ ' Phone' );
208
+
209
+ insert into column_model values (
210
+ 11 ,
211
+ ' state' ,
212
+ ' State' );
213
+
214
+ insert into column_model values (
215
+ 12 ,
216
+ ' zip' ,
217
+ ' Zip' );
218
+
219
+ -- Uncomment the following to create sequences if using Apache Derby 10.6+
220
+ -- create sequence column_model_s
221
+ -- start with 100;
222
+ --
223
+ -- create sequence pool_s
224
+ -- start with 100;
225
+ --
226
+ -- create sequence job_s
227
+ -- start with 100;
228
+ --
229
+ -- create sequence pool_cust_s
230
+ -- start with 100;
0 commit comments