ibm_db 0.9.0 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGES +4 -0
- data/README +1 -1
- data/ext/Makefile.nt32 +181 -0
- data/ext/extconf.rb +55 -55
- data/ext/ibm_db.c +6367 -6367
- data/ext/ruby_ibm_db.h +179 -179
- data/lib/active_record/vendor/db2-i5-zOS.yaml +328 -328
- data/test/adapter_test.rb +131 -131
- data/test/associations/eager_test.rb +445 -445
- data/test/associations_test.rb +1839 -1839
- data/test/fixtures/db_definitions/i5/ibm_db.drop.sql +32 -32
- data/test/fixtures/db_definitions/i5/ibm_db.sql +232 -232
- data/test/fixtures/db_definitions/i5/ibm_db2.drop.sql +2 -2
- data/test/fixtures/db_definitions/i5/ibm_db2.sql +5 -5
- data/test/fixtures/db_definitions/zOS/ibm_db.drop.sql +32 -32
- data/test/fixtures/db_definitions/zOS/ibm_db.sql +284 -284
- data/test/fixtures/db_definitions/zOS/ibm_db2.drop.sql +2 -2
- data/test/fixtures/db_definitions/zOS/ibm_db2.sql +7 -7
- metadata +36 -35
@@ -1,2 +1,2 @@
|
|
1
|
-
DROP TABLE courses;
|
2
|
-
|
1
|
+
DROP TABLE courses;
|
2
|
+
|
@@ -1,5 +1,5 @@
|
|
1
|
-
CREATE TABLE courses (
|
2
|
-
id INT NOT NULL PRIMARY KEY,
|
3
|
-
name VARCHAR(255) NOT NULL
|
4
|
-
);
|
5
|
-
|
1
|
+
CREATE TABLE courses (
|
2
|
+
id INT NOT NULL PRIMARY KEY,
|
3
|
+
name VARCHAR(255) NOT NULL
|
4
|
+
);
|
5
|
+
|
@@ -1,32 +1,32 @@
|
|
1
|
-
DROP TABLE accounts;
|
2
|
-
DROP TABLE funny_jokes;
|
3
|
-
DROP TABLE companies;
|
4
|
-
DROP TABLE topics;
|
5
|
-
DROP TABLE developers;
|
6
|
-
DROP TABLE projects;
|
7
|
-
DROP TABLE developers_projects;
|
8
|
-
DROP TABLE orders;
|
9
|
-
DROP TABLE customers;
|
10
|
-
DROP TABLE movies;
|
11
|
-
DROP TABLE subscribers;
|
12
|
-
DROP TABLE booleantests;
|
13
|
-
DROP TABLE auto_id_tests;
|
14
|
-
DROP TABLE entrants;
|
15
|
-
DROP TABLE colnametests;
|
16
|
-
DROP TABLE mixins;
|
17
|
-
DROP TABLE people;
|
18
|
-
DROP TABLE readers;
|
19
|
-
DROP TABLE binaries;
|
20
|
-
DROP TABLE computers;
|
21
|
-
DROP TABLE posts;
|
22
|
-
DROP TABLE comments;
|
23
|
-
DROP TABLE authors;
|
24
|
-
DROP TABLE tasks;
|
25
|
-
DROP TABLE categories;
|
26
|
-
DROP TABLE categories_posts;
|
27
|
-
DROP TABLE fk_test_has_pk;
|
28
|
-
DROP TABLE fk_test_has_fk;
|
29
|
-
DROP TABLE keyboards;
|
30
|
-
DROP TABLE legacy_things;
|
31
|
-
DROP TABLE numeric_data;
|
32
|
-
DROP TABLE mixed_case_monkeys;
|
1
|
+
DROP TABLE accounts;
|
2
|
+
DROP TABLE funny_jokes;
|
3
|
+
DROP TABLE companies;
|
4
|
+
DROP TABLE topics;
|
5
|
+
DROP TABLE developers;
|
6
|
+
DROP TABLE projects;
|
7
|
+
DROP TABLE developers_projects;
|
8
|
+
DROP TABLE orders;
|
9
|
+
DROP TABLE customers;
|
10
|
+
DROP TABLE movies;
|
11
|
+
DROP TABLE subscribers;
|
12
|
+
DROP TABLE booleantests;
|
13
|
+
DROP TABLE auto_id_tests;
|
14
|
+
DROP TABLE entrants;
|
15
|
+
DROP TABLE colnametests;
|
16
|
+
DROP TABLE mixins;
|
17
|
+
DROP TABLE people;
|
18
|
+
DROP TABLE readers;
|
19
|
+
DROP TABLE binaries;
|
20
|
+
DROP TABLE computers;
|
21
|
+
DROP TABLE posts;
|
22
|
+
DROP TABLE comments;
|
23
|
+
DROP TABLE authors;
|
24
|
+
DROP TABLE tasks;
|
25
|
+
DROP TABLE categories;
|
26
|
+
DROP TABLE categories_posts;
|
27
|
+
DROP TABLE fk_test_has_pk;
|
28
|
+
DROP TABLE fk_test_has_fk;
|
29
|
+
DROP TABLE keyboards;
|
30
|
+
DROP TABLE legacy_things;
|
31
|
+
DROP TABLE numeric_data;
|
32
|
+
DROP TABLE mixed_case_monkeys;
|
@@ -1,284 +1,284 @@
|
|
1
|
-
CREATE TABLE accounts (
|
2
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
3
|
-
firm_id INT DEFAULT NULL,
|
4
|
-
credit_limit INT DEFAULT NULL,
|
5
|
-
PRIMARY KEY (id)
|
6
|
-
);
|
7
|
-
CREATE UNIQUE INDEX accounts_id_idx ON
|
8
|
-
accounts (id);
|
9
|
-
|
10
|
-
CREATE TABLE funny_jokes (
|
11
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
12
|
-
name VARCHAR(50) DEFAULT NULL,
|
13
|
-
PRIMARY KEY (id)
|
14
|
-
);
|
15
|
-
CREATE UNIQUE INDEX funny_jokes_id_idx ON
|
16
|
-
funny_jokes (id);
|
17
|
-
|
18
|
-
CREATE TABLE companies (
|
19
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
20
|
-
type VARCHAR(50) DEFAULT NULL,
|
21
|
-
ruby_type VARCHAR(50) DEFAULT NULL,
|
22
|
-
firm_id INT DEFAULT NULL,
|
23
|
-
name VARCHAR(50) DEFAULT NULL,
|
24
|
-
client_of INT DEFAULT NULL,
|
25
|
-
rating INT DEFAULT 1,
|
26
|
-
PRIMARY KEY (id)
|
27
|
-
);
|
28
|
-
CREATE UNIQUE INDEX companies_id_idx ON
|
29
|
-
companies (id);
|
30
|
-
|
31
|
-
CREATE TABLE topics (
|
32
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
33
|
-
title VARCHAR(255) DEFAULT NULL,
|
34
|
-
author_name VARCHAR(255) DEFAULT NULL,
|
35
|
-
author_email_address VARCHAR(255) DEFAULT NULL,
|
36
|
-
written_on TIMESTAMP DEFAULT NULL,
|
37
|
-
--bonus_time TIMESTAMP DEFAULT NULL,
|
38
|
-
bonus_time TIME DEFAULT NULL,
|
39
|
-
last_read DATE DEFAULT NULL,
|
40
|
-
content VARCHAR(3000),
|
41
|
-
approved SMALLINT DEFAULT 1,
|
42
|
-
replies_count INT DEFAULT 0,
|
43
|
-
parent_id INT DEFAULT NULL,
|
44
|
-
type VARCHAR(50) DEFAULT NULL,
|
45
|
-
PRIMARY KEY (id)
|
46
|
-
);
|
47
|
-
CREATE UNIQUE INDEX topics_id_idx ON
|
48
|
-
topics (id);
|
49
|
-
|
50
|
-
CREATE TABLE developers (
|
51
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
52
|
-
name VARCHAR(100) DEFAULT NULL,
|
53
|
-
salary INT DEFAULT 70000,
|
54
|
-
created_at TIMESTAMP DEFAULT NULL,
|
55
|
-
updated_at TIMESTAMP DEFAULT NULL,
|
56
|
-
PRIMARY KEY (id)
|
57
|
-
);
|
58
|
-
CREATE UNIQUE INDEX developers_id_idx ON
|
59
|
-
developers (id);
|
60
|
-
|
61
|
-
CREATE TABLE projects (
|
62
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
63
|
-
name VARCHAR(100) DEFAULT NULL,
|
64
|
-
type VARCHAR(255) DEFAULT NULL,
|
65
|
-
PRIMARY KEY (id)
|
66
|
-
);
|
67
|
-
CREATE UNIQUE INDEX projects_id_idx ON
|
68
|
-
projects (id);
|
69
|
-
|
70
|
-
CREATE TABLE developers_projects (
|
71
|
-
developer_id INT NOT NULL,
|
72
|
-
project_id INT NOT NULL,
|
73
|
-
joined_on DATE DEFAULT NULL,
|
74
|
-
access_level SMALLINT DEFAULT 1
|
75
|
-
);
|
76
|
-
|
77
|
-
CREATE TABLE orders (
|
78
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
79
|
-
name VARCHAR(100) DEFAULT NULL,
|
80
|
-
billing_customer_id INT DEFAULT NULL,
|
81
|
-
shipping_customer_id INT DEFAULT NULL,
|
82
|
-
PRIMARY KEY (id)
|
83
|
-
);
|
84
|
-
CREATE UNIQUE INDEX orders_idx ON
|
85
|
-
orders (id);
|
86
|
-
|
87
|
-
CREATE TABLE customers (
|
88
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
89
|
-
name VARCHAR(100) DEFAULT NULL,
|
90
|
-
balance INT DEFAULT 0,
|
91
|
-
address_street VARCHAR(100) DEFAULT NULL,
|
92
|
-
address_city VARCHAR(100) DEFAULT NULL,
|
93
|
-
address_country VARCHAR(100) DEFAULT NULL,
|
94
|
-
gps_location VARCHAR(100) DEFAULT NULL,
|
95
|
-
PRIMARY KEY (id)
|
96
|
-
);
|
97
|
-
CREATE UNIQUE INDEX customers_id_idx ON
|
98
|
-
customers (id);
|
99
|
-
|
100
|
-
CREATE TABLE movies (
|
101
|
-
movieid INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
102
|
-
name VARCHAR(100) DEFAULT NULL,
|
103
|
-
PRIMARY KEY (movieid)
|
104
|
-
);
|
105
|
-
CREATE UNIQUE INDEX movies_id_idx ON
|
106
|
-
movies (movieid);
|
107
|
-
|
108
|
-
CREATE TABLE subscribers (
|
109
|
-
nick VARCHAR(100) NOT NULL,
|
110
|
-
name VARCHAR(100) DEFAULT NULL,
|
111
|
-
PRIMARY KEY (nick)
|
112
|
-
);
|
113
|
-
CREATE UNIQUE INDEX subscribers_id_idx ON
|
114
|
-
subscribers (nick);
|
115
|
-
|
116
|
-
CREATE TABLE booleantests (
|
117
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
118
|
-
value INT DEFAULT NULL,
|
119
|
-
PRIMARY KEY (id)
|
120
|
-
);
|
121
|
-
CREATE UNIQUE INDEX booleantest_id_idx ON
|
122
|
-
booleantests (id);
|
123
|
-
|
124
|
-
CREATE TABLE auto_id_tests (
|
125
|
-
auto_id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
126
|
-
value INT DEFAULT NULL,
|
127
|
-
PRIMARY KEY (auto_id)
|
128
|
-
);
|
129
|
-
CREATE UNIQUE INDEX auto_id_tests_idx ON
|
130
|
-
auto_id_tests (auto_id);
|
131
|
-
|
132
|
-
CREATE TABLE entrants (
|
133
|
-
id INT NOT NULL PRIMARY KEY,
|
134
|
-
name VARCHAR(255) NOT NULL,
|
135
|
-
course_id INT NOT NULL
|
136
|
-
);
|
137
|
-
CREATE UNIQUE INDEX entrants_id_idx ON
|
138
|
-
entrants (id);
|
139
|
-
|
140
|
-
CREATE TABLE colnametests (
|
141
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
142
|
-
references INT NOT NULL,
|
143
|
-
PRIMARY KEY (id)
|
144
|
-
);
|
145
|
-
CREATE UNIQUE INDEX colnametest_id_idx ON
|
146
|
-
colnametests (id);
|
147
|
-
|
148
|
-
CREATE TABLE mixins (
|
149
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
150
|
-
parent_id INT DEFAULT NULL,
|
151
|
-
pos INT DEFAULT NULL,
|
152
|
-
created_at TIMESTAMP DEFAULT NULL,
|
153
|
-
updated_at TIMESTAMP DEFAULT NULL,
|
154
|
-
lft INT DEFAULT NULL,
|
155
|
-
rgt INT DEFAULT NULL,
|
156
|
-
root_id INT DEFAULT NULL,
|
157
|
-
type VARCHAR(40) DEFAULT NULL,
|
158
|
-
PRIMARY KEY (id)
|
159
|
-
);
|
160
|
-
CREATE UNIQUE INDEX mixins_id_idx ON
|
161
|
-
mixins (id);
|
162
|
-
|
163
|
-
CREATE TABLE people (
|
164
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
165
|
-
first_name VARCHAR(40) NOT NULL,
|
166
|
-
lock_version INT DEFAULT 0,
|
167
|
-
PRIMARY KEY (id)
|
168
|
-
);
|
169
|
-
CREATE UNIQUE INDEX people_id_idx ON
|
170
|
-
people (id);
|
171
|
-
|
172
|
-
CREATE TABLE readers (
|
173
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
174
|
-
post_id INT NOT NULL,
|
175
|
-
person_id INT NOT NULL,
|
176
|
-
PRIMARY KEY (id)
|
177
|
-
);
|
178
|
-
CREATE UNIQUE INDEX readers_id_idx ON
|
179
|
-
readers (id);
|
180
|
-
|
181
|
-
CREATE TABLE binaries (
|
182
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
183
|
-
data BLOB(5000000),
|
184
|
-
PRIMARY KEY (id)
|
185
|
-
);
|
186
|
-
CREATE UNIQUE INDEX binaries_id_idx ON
|
187
|
-
binaries (id);
|
188
|
-
CREATE LOB TABLESPACE datalob;
|
189
|
-
CREATE AUXILIARY TABLE data_aux IN datalob
|
190
|
-
STORES binaries COLUMN data;
|
191
|
-
CREATE UNIQUE INDEX lob_data_idx ON data_aux;
|
192
|
-
|
193
|
-
CREATE TABLE computers (
|
194
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
195
|
-
developer INT NOT NULL,
|
196
|
-
extendedWarranty INT NOT NULL
|
197
|
-
);
|
198
|
-
|
199
|
-
CREATE TABLE posts (
|
200
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
201
|
-
author_id INT DEFAULT NULL,
|
202
|
-
title VARCHAR(255) DEFAULT NULL,
|
203
|
-
type VARCHAR(255) DEFAULT NULL,
|
204
|
-
body VARCHAR(3000) DEFAULT NULL
|
205
|
-
);
|
206
|
-
|
207
|
-
CREATE TABLE comments (
|
208
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
209
|
-
post_id INT DEFAULT NULL,
|
210
|
-
type VARCHAR(255) DEFAULT NULL,
|
211
|
-
body VARCHAR(3000) DEFAULT NULL
|
212
|
-
);
|
213
|
-
|
214
|
-
CREATE TABLE authors (
|
215
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
216
|
-
name VARCHAR(255) DEFAULT NULL
|
217
|
-
);
|
218
|
-
|
219
|
-
CREATE TABLE tasks (
|
220
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
221
|
-
starting TIMESTAMP DEFAULT NULL,
|
222
|
-
ending TIMESTAMP DEFAULT NULL
|
223
|
-
);
|
224
|
-
|
225
|
-
CREATE TABLE categories (
|
226
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
227
|
-
name VARCHAR(255) NOT NULL,
|
228
|
-
type VARCHAR(40) DEFAULT NULL
|
229
|
-
);
|
230
|
-
|
231
|
-
CREATE TABLE categories_posts (
|
232
|
-
category_id INT NOT NULL,
|
233
|
-
post_id INT NOT NULL
|
234
|
-
);
|
235
|
-
|
236
|
-
CREATE TABLE keyboards (
|
237
|
-
key_number INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
238
|
-
name VARCHAR(255)
|
239
|
-
);
|
240
|
-
|
241
|
-
CREATE TABLE fk_test_has_pk (
|
242
|
-
id INT NOT NULL PRIMARY KEY
|
243
|
-
);
|
244
|
-
CREATE UNIQUE INDEX fk_test_has_id_idx ON
|
245
|
-
fk_test_has_pk (id);
|
246
|
-
|
247
|
-
CREATE TABLE fk_test_has_fk (
|
248
|
-
id INT NOT NULL PRIMARY KEY,
|
249
|
-
fk_id INT NOT NULL,
|
250
|
-
|
251
|
-
FOREIGN KEY (fk_id) REFERENCES fk_test_has_pk(id)
|
252
|
-
);
|
253
|
-
CREATE UNIQUE INDEX fk_test_has_fk_idx ON
|
254
|
-
fk_test_has_fk (id);
|
255
|
-
|
256
|
-
--This table has an altered lock_version column name
|
257
|
-
CREATE TABLE legacy_things (
|
258
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
259
|
-
tps_report_number INT DEFAULT NULL,
|
260
|
-
version INT DEFAULT 0,
|
261
|
-
PRIMARY KEY (id)
|
262
|
-
);
|
263
|
-
CREATE UNIQUE INDEX legacy_thin_id_idx ON
|
264
|
-
legacy_things (id);
|
265
|
-
|
266
|
-
CREATE TABLE numeric_data (
|
267
|
-
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
268
|
-
bank_balance DECIMAL(10,2),
|
269
|
-
big_bank_balance DECIMAL(15,2),
|
270
|
-
world_population DECIMAL(10),
|
271
|
-
my_house_population DECIMAL(2),
|
272
|
-
decimal_number_with_default DECIMAL(3,2) DEFAULT 2.78
|
273
|
-
);
|
274
|
-
CREATE UNIQUE INDEX numeric_data_idx ON
|
275
|
-
numeric_data (id);
|
276
|
-
|
277
|
-
CREATE TABLE mixed_case_monkeys (
|
278
|
-
monkeyID INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
279
|
-
fleaCount INT DEFAULT 0,
|
280
|
-
PRIMARY KEY (monkeyID)
|
281
|
-
);
|
282
|
-
|
283
|
-
CREATE UNIQUE INDEX mixed_monkeys_idx ON
|
284
|
-
mixed_case_monkeys (monkeyID);
|
1
|
+
CREATE TABLE accounts (
|
2
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
3
|
+
firm_id INT DEFAULT NULL,
|
4
|
+
credit_limit INT DEFAULT NULL,
|
5
|
+
PRIMARY KEY (id)
|
6
|
+
);
|
7
|
+
CREATE UNIQUE INDEX accounts_id_idx ON
|
8
|
+
accounts (id);
|
9
|
+
|
10
|
+
CREATE TABLE funny_jokes (
|
11
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
12
|
+
name VARCHAR(50) DEFAULT NULL,
|
13
|
+
PRIMARY KEY (id)
|
14
|
+
);
|
15
|
+
CREATE UNIQUE INDEX funny_jokes_id_idx ON
|
16
|
+
funny_jokes (id);
|
17
|
+
|
18
|
+
CREATE TABLE companies (
|
19
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
20
|
+
type VARCHAR(50) DEFAULT NULL,
|
21
|
+
ruby_type VARCHAR(50) DEFAULT NULL,
|
22
|
+
firm_id INT DEFAULT NULL,
|
23
|
+
name VARCHAR(50) DEFAULT NULL,
|
24
|
+
client_of INT DEFAULT NULL,
|
25
|
+
rating INT DEFAULT 1,
|
26
|
+
PRIMARY KEY (id)
|
27
|
+
);
|
28
|
+
CREATE UNIQUE INDEX companies_id_idx ON
|
29
|
+
companies (id);
|
30
|
+
|
31
|
+
CREATE TABLE topics (
|
32
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
33
|
+
title VARCHAR(255) DEFAULT NULL,
|
34
|
+
author_name VARCHAR(255) DEFAULT NULL,
|
35
|
+
author_email_address VARCHAR(255) DEFAULT NULL,
|
36
|
+
written_on TIMESTAMP DEFAULT NULL,
|
37
|
+
--bonus_time TIMESTAMP DEFAULT NULL,
|
38
|
+
bonus_time TIME DEFAULT NULL,
|
39
|
+
last_read DATE DEFAULT NULL,
|
40
|
+
content VARCHAR(3000),
|
41
|
+
approved SMALLINT DEFAULT 1,
|
42
|
+
replies_count INT DEFAULT 0,
|
43
|
+
parent_id INT DEFAULT NULL,
|
44
|
+
type VARCHAR(50) DEFAULT NULL,
|
45
|
+
PRIMARY KEY (id)
|
46
|
+
);
|
47
|
+
CREATE UNIQUE INDEX topics_id_idx ON
|
48
|
+
topics (id);
|
49
|
+
|
50
|
+
CREATE TABLE developers (
|
51
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
52
|
+
name VARCHAR(100) DEFAULT NULL,
|
53
|
+
salary INT DEFAULT 70000,
|
54
|
+
created_at TIMESTAMP DEFAULT NULL,
|
55
|
+
updated_at TIMESTAMP DEFAULT NULL,
|
56
|
+
PRIMARY KEY (id)
|
57
|
+
);
|
58
|
+
CREATE UNIQUE INDEX developers_id_idx ON
|
59
|
+
developers (id);
|
60
|
+
|
61
|
+
CREATE TABLE projects (
|
62
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
63
|
+
name VARCHAR(100) DEFAULT NULL,
|
64
|
+
type VARCHAR(255) DEFAULT NULL,
|
65
|
+
PRIMARY KEY (id)
|
66
|
+
);
|
67
|
+
CREATE UNIQUE INDEX projects_id_idx ON
|
68
|
+
projects (id);
|
69
|
+
|
70
|
+
CREATE TABLE developers_projects (
|
71
|
+
developer_id INT NOT NULL,
|
72
|
+
project_id INT NOT NULL,
|
73
|
+
joined_on DATE DEFAULT NULL,
|
74
|
+
access_level SMALLINT DEFAULT 1
|
75
|
+
);
|
76
|
+
|
77
|
+
CREATE TABLE orders (
|
78
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
79
|
+
name VARCHAR(100) DEFAULT NULL,
|
80
|
+
billing_customer_id INT DEFAULT NULL,
|
81
|
+
shipping_customer_id INT DEFAULT NULL,
|
82
|
+
PRIMARY KEY (id)
|
83
|
+
);
|
84
|
+
CREATE UNIQUE INDEX orders_idx ON
|
85
|
+
orders (id);
|
86
|
+
|
87
|
+
CREATE TABLE customers (
|
88
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
89
|
+
name VARCHAR(100) DEFAULT NULL,
|
90
|
+
balance INT DEFAULT 0,
|
91
|
+
address_street VARCHAR(100) DEFAULT NULL,
|
92
|
+
address_city VARCHAR(100) DEFAULT NULL,
|
93
|
+
address_country VARCHAR(100) DEFAULT NULL,
|
94
|
+
gps_location VARCHAR(100) DEFAULT NULL,
|
95
|
+
PRIMARY KEY (id)
|
96
|
+
);
|
97
|
+
CREATE UNIQUE INDEX customers_id_idx ON
|
98
|
+
customers (id);
|
99
|
+
|
100
|
+
CREATE TABLE movies (
|
101
|
+
movieid INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
102
|
+
name VARCHAR(100) DEFAULT NULL,
|
103
|
+
PRIMARY KEY (movieid)
|
104
|
+
);
|
105
|
+
CREATE UNIQUE INDEX movies_id_idx ON
|
106
|
+
movies (movieid);
|
107
|
+
|
108
|
+
CREATE TABLE subscribers (
|
109
|
+
nick VARCHAR(100) NOT NULL,
|
110
|
+
name VARCHAR(100) DEFAULT NULL,
|
111
|
+
PRIMARY KEY (nick)
|
112
|
+
);
|
113
|
+
CREATE UNIQUE INDEX subscribers_id_idx ON
|
114
|
+
subscribers (nick);
|
115
|
+
|
116
|
+
CREATE TABLE booleantests (
|
117
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
118
|
+
value INT DEFAULT NULL,
|
119
|
+
PRIMARY KEY (id)
|
120
|
+
);
|
121
|
+
CREATE UNIQUE INDEX booleantest_id_idx ON
|
122
|
+
booleantests (id);
|
123
|
+
|
124
|
+
CREATE TABLE auto_id_tests (
|
125
|
+
auto_id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
126
|
+
value INT DEFAULT NULL,
|
127
|
+
PRIMARY KEY (auto_id)
|
128
|
+
);
|
129
|
+
CREATE UNIQUE INDEX auto_id_tests_idx ON
|
130
|
+
auto_id_tests (auto_id);
|
131
|
+
|
132
|
+
CREATE TABLE entrants (
|
133
|
+
id INT NOT NULL PRIMARY KEY,
|
134
|
+
name VARCHAR(255) NOT NULL,
|
135
|
+
course_id INT NOT NULL
|
136
|
+
);
|
137
|
+
CREATE UNIQUE INDEX entrants_id_idx ON
|
138
|
+
entrants (id);
|
139
|
+
|
140
|
+
CREATE TABLE colnametests (
|
141
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
142
|
+
references INT NOT NULL,
|
143
|
+
PRIMARY KEY (id)
|
144
|
+
);
|
145
|
+
CREATE UNIQUE INDEX colnametest_id_idx ON
|
146
|
+
colnametests (id);
|
147
|
+
|
148
|
+
CREATE TABLE mixins (
|
149
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
150
|
+
parent_id INT DEFAULT NULL,
|
151
|
+
pos INT DEFAULT NULL,
|
152
|
+
created_at TIMESTAMP DEFAULT NULL,
|
153
|
+
updated_at TIMESTAMP DEFAULT NULL,
|
154
|
+
lft INT DEFAULT NULL,
|
155
|
+
rgt INT DEFAULT NULL,
|
156
|
+
root_id INT DEFAULT NULL,
|
157
|
+
type VARCHAR(40) DEFAULT NULL,
|
158
|
+
PRIMARY KEY (id)
|
159
|
+
);
|
160
|
+
CREATE UNIQUE INDEX mixins_id_idx ON
|
161
|
+
mixins (id);
|
162
|
+
|
163
|
+
CREATE TABLE people (
|
164
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
165
|
+
first_name VARCHAR(40) NOT NULL,
|
166
|
+
lock_version INT DEFAULT 0,
|
167
|
+
PRIMARY KEY (id)
|
168
|
+
);
|
169
|
+
CREATE UNIQUE INDEX people_id_idx ON
|
170
|
+
people (id);
|
171
|
+
|
172
|
+
CREATE TABLE readers (
|
173
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
174
|
+
post_id INT NOT NULL,
|
175
|
+
person_id INT NOT NULL,
|
176
|
+
PRIMARY KEY (id)
|
177
|
+
);
|
178
|
+
CREATE UNIQUE INDEX readers_id_idx ON
|
179
|
+
readers (id);
|
180
|
+
|
181
|
+
CREATE TABLE binaries (
|
182
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
183
|
+
data BLOB(5000000),
|
184
|
+
PRIMARY KEY (id)
|
185
|
+
);
|
186
|
+
CREATE UNIQUE INDEX binaries_id_idx ON
|
187
|
+
binaries (id);
|
188
|
+
CREATE LOB TABLESPACE datalob;
|
189
|
+
CREATE AUXILIARY TABLE data_aux IN datalob
|
190
|
+
STORES binaries COLUMN data;
|
191
|
+
CREATE UNIQUE INDEX lob_data_idx ON data_aux;
|
192
|
+
|
193
|
+
CREATE TABLE computers (
|
194
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
195
|
+
developer INT NOT NULL,
|
196
|
+
extendedWarranty INT NOT NULL
|
197
|
+
);
|
198
|
+
|
199
|
+
CREATE TABLE posts (
|
200
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
201
|
+
author_id INT DEFAULT NULL,
|
202
|
+
title VARCHAR(255) DEFAULT NULL,
|
203
|
+
type VARCHAR(255) DEFAULT NULL,
|
204
|
+
body VARCHAR(3000) DEFAULT NULL
|
205
|
+
);
|
206
|
+
|
207
|
+
CREATE TABLE comments (
|
208
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
209
|
+
post_id INT DEFAULT NULL,
|
210
|
+
type VARCHAR(255) DEFAULT NULL,
|
211
|
+
body VARCHAR(3000) DEFAULT NULL
|
212
|
+
);
|
213
|
+
|
214
|
+
CREATE TABLE authors (
|
215
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
216
|
+
name VARCHAR(255) DEFAULT NULL
|
217
|
+
);
|
218
|
+
|
219
|
+
CREATE TABLE tasks (
|
220
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
221
|
+
starting TIMESTAMP DEFAULT NULL,
|
222
|
+
ending TIMESTAMP DEFAULT NULL
|
223
|
+
);
|
224
|
+
|
225
|
+
CREATE TABLE categories (
|
226
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
227
|
+
name VARCHAR(255) NOT NULL,
|
228
|
+
type VARCHAR(40) DEFAULT NULL
|
229
|
+
);
|
230
|
+
|
231
|
+
CREATE TABLE categories_posts (
|
232
|
+
category_id INT NOT NULL,
|
233
|
+
post_id INT NOT NULL
|
234
|
+
);
|
235
|
+
|
236
|
+
CREATE TABLE keyboards (
|
237
|
+
key_number INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
238
|
+
name VARCHAR(255)
|
239
|
+
);
|
240
|
+
|
241
|
+
CREATE TABLE fk_test_has_pk (
|
242
|
+
id INT NOT NULL PRIMARY KEY
|
243
|
+
);
|
244
|
+
CREATE UNIQUE INDEX fk_test_has_id_idx ON
|
245
|
+
fk_test_has_pk (id);
|
246
|
+
|
247
|
+
CREATE TABLE fk_test_has_fk (
|
248
|
+
id INT NOT NULL PRIMARY KEY,
|
249
|
+
fk_id INT NOT NULL,
|
250
|
+
|
251
|
+
FOREIGN KEY (fk_id) REFERENCES fk_test_has_pk(id)
|
252
|
+
);
|
253
|
+
CREATE UNIQUE INDEX fk_test_has_fk_idx ON
|
254
|
+
fk_test_has_fk (id);
|
255
|
+
|
256
|
+
--This table has an altered lock_version column name
|
257
|
+
CREATE TABLE legacy_things (
|
258
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
259
|
+
tps_report_number INT DEFAULT NULL,
|
260
|
+
version INT DEFAULT 0,
|
261
|
+
PRIMARY KEY (id)
|
262
|
+
);
|
263
|
+
CREATE UNIQUE INDEX legacy_thin_id_idx ON
|
264
|
+
legacy_things (id);
|
265
|
+
|
266
|
+
CREATE TABLE numeric_data (
|
267
|
+
id INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
268
|
+
bank_balance DECIMAL(10,2),
|
269
|
+
big_bank_balance DECIMAL(15,2),
|
270
|
+
world_population DECIMAL(10),
|
271
|
+
my_house_population DECIMAL(2),
|
272
|
+
decimal_number_with_default DECIMAL(3,2) DEFAULT 2.78
|
273
|
+
);
|
274
|
+
CREATE UNIQUE INDEX numeric_data_idx ON
|
275
|
+
numeric_data (id);
|
276
|
+
|
277
|
+
CREATE TABLE mixed_case_monkeys (
|
278
|
+
monkeyID INT GENERATED BY DEFAULT AS IDENTITY (START WITH 100),
|
279
|
+
fleaCount INT DEFAULT 0,
|
280
|
+
PRIMARY KEY (monkeyID)
|
281
|
+
);
|
282
|
+
|
283
|
+
CREATE UNIQUE INDEX mixed_monkeys_idx ON
|
284
|
+
mixed_case_monkeys (monkeyID);
|