Skip to content

Commit 358af79

Browse files
committed
add ibm i db2 table.dll
1 parent ec0b2ee commit 358af79

File tree

3 files changed

+112
-2
lines changed

3 files changed

+112
-2
lines changed

daytrader-ee7-web/src/main/java/com/ibm/websphere/samples/daytrader/web/TradeConfigServlet.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -316,11 +316,13 @@ public void service(HttpServletRequest req, HttpServletResponse resp) throws Ser
316316
resp.getWriter().println("<BR>TradeBuildDB: **** Database Product detected: " + dbProductName + " ****</BR>");
317317
if (dbProductName.startsWith("DB2/")) {// if db is DB2
318318
ddlFile = "/dbscripts/db2/Table.ddl";
319-
} else if (dbProductName.startsWith("Apache Derby")) { //if db is Derby
319+
} else if (dbProductName.startsWith("DB2 UDB for AS/400")) { //if db is DB2 on IBM i
320+
ddlFile = "/dbscripts/db2i/Table.ddl";
321+
} else if (dbProductName.startsWith("Apache Derby")) { //if db is Derby
320322
ddlFile = "/dbscripts/derby/Table.ddl";
321323
} else if (dbProductName.startsWith("Oracle")) { // if the Db is Oracle
322324
ddlFile = "/dbscripts/oracle/Table.ddl";
323-
} else {// Unsupported "Other" Database
325+
} else {// Unsupported "Other" Database, try derby ddl
324326
ddlFile = "/dbscripts/derby/Table.ddl";
325327
resp.getWriter().println("<BR>TradeBuildDB: **** This Database is unsupported/untested use at your own risk ****</BR>");
326328
}

daytrader-ee7-web/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/TradeConfigJSF.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,8 @@ public String buildDatabaseTables() {
236236
result = result + "TradeBuildDB: **** Database Product detected: " + dbProductName + " ****<br/>";
237237
if (dbProductName.startsWith("DB2/")) { // if db is DB2
238238
ddlFile = "/dbscripts/db2/Table.ddl";
239+
} else if (dbProductName.startsWith("DB2 UDB for AS/400")) { //if db is DB2 on IBM i
240+
ddlFile = "/dbscripts/db2i/Table.ddl";
239241
} else if (dbProductName.startsWith("Apache Derby")) { //if db is Derby
240242
ddlFile = "/dbscripts/derby/Table.ddl";
241243
} else if (dbProductName.startsWith("Oracle")) { // if the Db is Oracle
Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
/*
2+
## (C) Copyright IBM Corporation 2015.
3+
##
4+
## Licensed under the Apache License, Version 2.0 (the "License");
5+
## you may not use this file except in compliance with the License.
6+
## You may obtain a copy of the License at
7+
##
8+
## http://www.apache.org/licenses/LICENSE-2.0
9+
##
10+
## Unless required by applicable law or agreed to in writing, software
11+
## distributed under the License is distributed on an "AS IS" BASIS,
12+
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
## See the License for the specific language governing permissions and
14+
## limitations under the License.
15+
16+
# Each SQL statement in this file should terminate with a semicolon (;)
17+
# Lines starting with the pound character (#) are considered as comments
18+
*/
19+
20+
DROP TABLE HOLDINGEJB cascade;
21+
DROP TABLE ACCOUNTPROFILEEJB cascade;
22+
DROP TABLE QUOTEEJB cascade;
23+
DROP TABLE KEYGENEJB cascade;
24+
DROP TABLE ACCOUNTEJB cascade;
25+
DROP TABLE ORDEREJB cascade;
26+
27+
CREATE OR REPLACE TABLE HOLDINGEJB
28+
(PURCHASEPRICE DECIMAL(14, 2) DEFAULT NULL,
29+
HOLDINGID INTEGER NOT NULL,
30+
QUANTITY DOUBLE NOT NULL,
31+
PURCHASEDATE DATE DEFAULT NULL,
32+
ACCOUNT_ACCOUNTID INTEGER DEFAULT NULL,
33+
QUOTE_SYMBOL VARCHAR(250) DEFAULT NULL);
34+
35+
ALTER TABLE HOLDINGEJB
36+
ADD CONSTRAINT PK_HOLDINGEJB PRIMARY KEY (HOLDINGID);
37+
38+
CREATE OR REPLACE TABLE ACCOUNTPROFILEEJB
39+
(ADDRESS VARCHAR(250) DEFAULT NULL,
40+
PASSWD VARCHAR(250) DEFAULT NULL,
41+
USERID VARCHAR(250) NOT NULL,
42+
EMAIL VARCHAR(250) DEFAULT NULL,
43+
CREDITCARD VARCHAR(250) DEFAULT NULL,
44+
FULLNAME VARCHAR(250) DEFAULT NULL);
45+
46+
ALTER TABLE ACCOUNTPROFILEEJB
47+
ADD CONSTRAINT PK_ACCOUNTPROFILEEJB PRIMARY KEY (USERID);
48+
49+
CREATE OR REPLACE TABLE QUOTEEJB
50+
(LOW DECIMAL(14, 2) DEFAULT NULL,
51+
OPEN1 DECIMAL(14, 2) DEFAULT NULL,
52+
VOLUME DOUBLE NOT NULL,
53+
PRICE DECIMAL(14, 2) DEFAULT NULL,
54+
HIGH DECIMAL(14, 2) DEFAULT NULL,
55+
COMPANYNAME VARCHAR(250) DEFAULT NULL,
56+
SYMBOL VARCHAR(250) NOT NULL,
57+
CHANGE1 DOUBLE NOT NULL);
58+
59+
ALTER TABLE QUOTEEJB
60+
ADD CONSTRAINT PK_QUOTEEJB PRIMARY KEY (SYMBOL);
61+
62+
CREATE TABLE KEYGENEJB
63+
(KEYVAL INTEGER NOT NULL,
64+
KEYNAME VARCHAR(250) NOT NULL);
65+
66+
ALTER TABLE KEYGENEJB
67+
ADD CONSTRAINT PK_KEYGENEJB PRIMARY KEY (KEYNAME);
68+
69+
INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('account', 0);
70+
INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('holding', 0);
71+
INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('order', 0);
72+
73+
CREATE TABLE ACCOUNTEJB
74+
(CREATIONDATE DATE DEFAULT NULL,
75+
OPENBALANCE DECIMAL(14, 2) DEFAULT NULL,
76+
LOGOUTCOUNT INTEGER NOT NULL,
77+
BALANCE DECIMAL(14, 2) DEFAULT NULL,
78+
ACCOUNTID INTEGER NOT NULL,
79+
LASTLOGIN DATE DEFAULT NULL,
80+
LOGINCOUNT INTEGER NOT NULL,
81+
PROFILE_USERID VARCHAR(250) DEFAULT NULL);
82+
83+
ALTER TABLE ACCOUNTEJB
84+
ADD CONSTRAINT PK_ACCOUNTEJB PRIMARY KEY (ACCOUNTID);
85+
86+
CREATE TABLE ORDEREJB
87+
(ORDERFEE DECIMAL(14, 2) DEFAULT NULL,
88+
COMPLETIONDATE DATE DEFAULT NULL,
89+
ORDERTYPE VARCHAR(250) DEFAULT NULL,
90+
ORDERSTATUS VARCHAR(250) DEFAULT NULL,
91+
PRICE DECIMAL(14, 2) DEFAULT NULL,
92+
QUANTITY DOUBLE NOT NULL,
93+
OPENDATE DATE DEFAULT NULL,
94+
ORDERID INTEGER NOT NULL,
95+
ACCOUNT_ACCOUNTID INTEGER DEFAULT NULL,
96+
QUOTE_SYMBOL VARCHAR(250) DEFAULT NULL,
97+
HOLDING_HOLDINGID INTEGER DEFAULT NULL);
98+
99+
ALTER TABLE ORDEREJB
100+
ADD CONSTRAINT PK_ORDEREJB PRIMARY KEY (ORDERID);
101+
102+
CREATE INDEX ACCOUNT_USERID ON ACCOUNTEJB(PROFILE_USERID);
103+
CREATE INDEX HOLDING_ACCOUNTID ON HOLDINGEJB(ACCOUNT_ACCOUNTID);
104+
CREATE INDEX ORDER_ACCOUNTID ON ORDEREJB(ACCOUNT_ACCOUNTID);
105+
CREATE INDEX ORDER_HOLDINGID ON ORDEREJB(HOLDING_HOLDINGID);
106+
CREATE INDEX CLOSED_ORDERS ON ORDEREJB(ACCOUNT_ACCOUNTID,ORDERSTATUS);

0 commit comments

Comments
 (0)