]> WPIA git - gigi.git/blob - src/club/wpia/gigi/database/tableStructure.sql
chg: revoke certificates if repeated ping failed
[gigi.git] / src / club / wpia / gigi / database / tableStructure.sql
1 DROP TABLE IF EXISTS "certOwners";
2 CREATE TABLE "certOwners" (
3   "id" serial NOT NULL,
4   "created" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
5   "modified" timestamp NULL DEFAULT NULL,
6   "deleted" timestamp NULL DEFAULT NULL,
7   PRIMARY KEY ("id")
8 );
9
10 DROP TABLE IF EXISTS "users";
11 CREATE TABLE "users" (
12   "id" int NOT NULL,
13   "email" varchar(255) NOT NULL DEFAULT '',
14   "password" varchar(255) NOT NULL DEFAULT '',
15   "preferredName" int NULL,
16   "dob" date NOT NULL,
17   "verified" boolean NOT NULL DEFAULT 'false',
18   "language" varchar(5) NOT NULL DEFAULT '',
19   "country" varchar(2) NULL,
20   PRIMARY KEY ("id")
21 );
22 CREATE INDEX ON "users" ("email");
23 CREATE INDEX ON "users" ("verified");
24
25
26 DROP TABLE IF EXISTS "organisations";
27 CREATE TABLE IF NOT EXISTS "organisations" (
28   "id" int NOT NULL,
29   "name" varchar(64) NOT NULL,
30   "country" varchar(2) NOT NULL,
31   "province" varchar(128) NOT NULL,
32   "city" varchar(128) NOT NULL,
33   "contactEmail" varchar(100) NOT NULL,
34   "creator" int NOT NULL,
35   "optional_name" text,
36   "postal_address" text,
37   PRIMARY KEY ("id")
38 );
39
40 DROP TABLE IF EXISTS "domains";
41 CREATE TABLE "domains" (
42   "id" serial NOT NULL,
43   "memid" int NOT NULL,
44   "domain" varchar(255) NOT NULL,
45   "created" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
46   "modified" timestamp NULL DEFAULT NULL,
47   "deleted" timestamp NULL DEFAULT NULL,
48   PRIMARY KEY ("id")
49 );
50 CREATE INDEX ON "domains" ("memid");
51 CREATE INDEX ON "domains" ("domain");
52 CREATE INDEX ON "domains" ("deleted");
53
54 DROP TABLE IF EXISTS "emails";
55 CREATE TABLE "emails" (
56   "id" serial NOT NULL,
57   "memid" int NOT NULL DEFAULT '0',
58   "email" varchar(255) NOT NULL DEFAULT '',
59   "created" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
60   "modified" timestamp NULL DEFAULT NULL,
61   "deleted" timestamp NULL DEFAULT NULL,
62   PRIMARY KEY ("id")
63 );
64 CREATE INDEX ON "emails" ("memid");
65 CREATE INDEX ON "emails" ("deleted");
66 CREATE INDEX ON "emails" ("email");
67
68 DROP TABLE IF EXISTS "emailPinglog";
69 DROP TABLE IF EXISTS "domainPinglog";
70
71 DROP TYPE IF EXISTS "emailPingType";
72 CREATE TYPE "emailPingType" AS ENUM ('fast', 'active');
73 DROP TYPE IF EXISTS "pingState";
74 CREATE TYPE "pingState" AS ENUM ('open', 'success', 'failed');
75
76 CREATE TABLE "emailPinglog" (
77   "when" timestamp NOT NULL,
78   "uid" int NOT NULL,
79   "email" varchar(255) NOT NULL,
80   "type" "emailPingType" NOT NULL,
81   "status" "pingState" NOT NULL,
82   "result" varchar(255) NOT NULL,
83   "challenge" varchar(255) NULL DEFAULT NULL
84 );
85
86 DROP TABLE IF EXISTS "pingconfig";
87
88 DROP TYPE IF EXISTS "pingType";
89 CREATE TYPE "pingType" AS ENUM ('email', 'ssl', 'http', 'dns');
90
91 CREATE TABLE "pingconfig" (
92   "id" serial NOT NULL,
93   "domainid" int NOT NULL,
94   "type" "pingType" NOT NULL,
95   "info" varchar(255) NOT NULL,
96   "deleted" timestamp NULL DEFAULT NULL,
97   PRIMARY KEY ("id")
98 );
99
100
101 CREATE TABLE "domainPinglog" (
102   "when" TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
103   "configId" int NOT NULL,
104   "state" "pingState" NOT NULL,
105   "challenge" varchar(16),
106   "result" varchar(255),
107   "needsAction" boolean DEFAULT false
108 );
109 CREATE INDEX ON "domainPinglog" ("configId","when");
110 CREATE INDEX ON "domainPinglog" ("when", "needsAction");
111
112 DROP TABLE IF EXISTS "baddomains";
113 CREATE TABLE "baddomains" (
114   "domain" varchar(255) NOT NULL DEFAULT ''
115 );
116
117
118 DROP TABLE IF EXISTS "alerts";
119 CREATE TABLE "alerts" (
120   "memid" int NOT NULL DEFAULT '0',
121   "general" boolean NOT NULL DEFAULT 'false',
122   "country" boolean NOT NULL DEFAULT 'false',
123   "regional" boolean NOT NULL DEFAULT 'false',
124   "radius" boolean NOT NULL DEFAULT 'false',
125   PRIMARY KEY ("memid")
126 );
127
128 DROP TABLE IF EXISTS "user_agreements";
129 CREATE TABLE "user_agreements" (
130   "id" serial NOT NULL,
131   "memid" int NOT NULL,
132   "secmemid" int DEFAULT NULL,
133   "document" varchar(50) DEFAULT NULL,
134   "date" timestamp DEFAULT NULL,
135   "active" boolean NOT NULL,
136   "method" varchar(100) NOT NULL,
137   "comment" varchar(100) DEFAULT NULL,
138   PRIMARY KEY ("id")
139 );
140
141 DROP TABLE IF EXISTS "certs";
142 DROP TYPE IF EXISTS "revocationType";
143 CREATE TYPE "revocationType" AS ENUM('user', 'support', 'ping_timeout', 'key_compromise');
144
145 DROP TYPE IF EXISTS "mdType";
146 CREATE TYPE "mdType" AS ENUM('md5','sha1','sha256','sha384','sha512');
147
148 DROP TYPE IF EXISTS "csrType";
149 CREATE TYPE "csrType" AS ENUM ('CSR', 'SPKAC');
150
151 CREATE TABLE "certs" (
152   "id" serial NOT NULL,
153   "memid" int NOT NULL DEFAULT '0',
154   "serial" varchar(50) NOT NULL DEFAULT '',
155   "keytype" char(2) NOT NULL DEFAULT 'NS',
156   "codesign" boolean NOT NULL DEFAULT 'false',
157   "md" "mdType" NOT NULL DEFAULT 'sha512',
158   "profile" int NOT NULL,
159   "caid" int NULL DEFAULT NULL,
160
161   "csr_type" "csrType" NOT NULL,
162   "created" timestamp NULL DEFAULT NULL,
163   "modified" timestamp NULL DEFAULT NULL,
164
165   "revoked" timestamp NULL,
166   "revocationType" "revocationType" NULL,
167   "revocationChallenge" varchar(32) NULL DEFAULT NULL,
168   "revocationSignature" text NULL DEFAULT NULL,
169   "revocationMessage" text NULL DEFAULT NULL,
170
171   "expire" timestamp NULL DEFAULT NULL,
172   "renewed" boolean NOT NULL DEFAULT 'false',
173   "pkhash" char(40) DEFAULT NULL,
174   "certhash" char(40) DEFAULT NULL,
175   "description" varchar(100) NOT NULL DEFAULT '',
176   PRIMARY KEY ("id")
177 );
178 CREATE INDEX ON "certs" ("pkhash");
179 CREATE INDEX ON "certs" ("revoked");
180 CREATE INDEX ON "certs" ("created");
181 CREATE INDEX ON "certs" ("memid");
182 CREATE INDEX ON "certs" ("serial");
183 CREATE INDEX ON "certs" ("expire");
184
185 DROP TABLE IF EXISTS "certAvas";
186 CREATE TABLE "certAvas" (
187   "certId" int NOT NULL,
188   "name" varchar(20) NOT NULL,
189   "value" varchar(255) NOT NULL,
190
191   PRIMARY KEY ("certId", "name")
192 );
193
194 DROP TABLE IF EXISTS "logincerts";
195 CREATE TABLE "logincerts" (
196   "id" int NOT NULL,
197
198   PRIMARY KEY ("id")
199 );
200
201 DROP TABLE IF EXISTS "profiles";
202 CREATE TABLE "profiles" (
203   "id" serial NOT NULL,
204   "keyname" varchar(60) NOT NULL,
205   "include" varchar(200) NOT NULL,
206   "requires" varchar(200) NOT NULL,
207   "name" varchar(100) NOT NULL,
208   PRIMARY KEY ("id"),
209   UNIQUE ("keyname")
210 );
211
212 DROP TABLE IF EXISTS "subjectAlternativeNames";
213
214 DROP TYPE IF EXISTS "SANType";
215 CREATE TYPE "SANType" AS ENUM ('email', 'DNS');
216
217 CREATE TABLE "subjectAlternativeNames" (
218   "certId" int NOT NULL,
219   "contents" varchar(50) NOT NULL,
220   "type" "SANType" NOT NULL
221 );
222
223 DROP TABLE IF EXISTS "cacerts";
224 CREATE TABLE "cacerts" (
225   "id" serial NOT NULL,
226   "keyname" varchar(60) NOT NULL,
227   "link" varchar(160) NOT NULL,
228   "parentRoot" int NOT NULL,
229   "validFrom" timestamp NULL DEFAULT NULL,
230   "validTo" timestamp NULL DEFAULT NULL,
231   PRIMARY KEY ("id"),
232   UNIQUE ("keyname")
233 );
234
235 DROP TABLE IF EXISTS "jobs";
236
237 DROP TYPE IF EXISTS "jobType";
238 CREATE TYPE "jobType" AS ENUM ('sign', 'revoke');
239 DROP TYPE IF EXISTS "jobState";
240 CREATE TYPE "jobState" AS ENUM ('open', 'done', 'error');
241
242
243 CREATE TABLE "jobs" (
244   "id" serial NOT NULL,
245   "targetId" int NOT NULL,
246   "task" "jobType" NOT NULL,
247   "state" "jobState" NOT NULL DEFAULT 'open',
248   "attempt" smallint NOT NULL DEFAULT '0',
249   "executeFrom" DATE,
250   "executeTo" VARCHAR(11),
251   PRIMARY KEY ("id")
252 );
253
254 CREATE INDEX ON "jobs" ("state");
255
256 DROP TABLE IF EXISTS "notary";
257
258 DROP TYPE IF EXISTS "notaryType";
259 CREATE TYPE "notaryType" AS enum('Face to Face Meeting', 'TOPUP', 'TTP-Assisted', 'Nucleus Bonus');
260
261 CREATE TABLE "notary" (
262   "id" serial NOT NULL,
263   "from" int NOT NULL DEFAULT '0',
264   "to" int NOT NULL DEFAULT '0',
265 # total points that have been entered
266   "points" int NOT NULL DEFAULT '0',
267 # awarded and the "experience points" are calculated virtually
268 # Face to Face is default, TOPUP is for the remaining 30Points after two TTP
269 # TTP is default ttp verification
270   "method" "notaryType" NOT NULL DEFAULT 'Face to Face Meeting',
271   "location" varchar(255) NOT NULL DEFAULT '',
272   "date" varchar(255) NOT NULL DEFAULT '',
273 # date when verification was entered
274   "when" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
275 #?
276   "expire" timestamp NULL DEFAULT NULL,
277 #?????????????????
278   "sponsor" int NOT NULL DEFAULT '0',
279 # date when verification was deleted (or 0)
280   "deleted" timestamp NULL DEFAULT NULL,
281   "country" varchar(2) NULL,
282   PRIMARY KEY ("id")
283 );
284
285 CREATE INDEX ON "notary"("from");
286 CREATE INDEX ON "notary"("to");
287 CREATE INDEX ON "notary"("when");
288 CREATE INDEX ON "notary"("method");
289
290
291 DROP TABLE IF EXISTS "cats_passed";
292 CREATE TABLE "cats_passed" (
293   "id" serial NOT NULL,
294   "user_id" int NOT NULL,
295   "variant_id" int NOT NULL,
296   "pass_date" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
297   "language" varchar(5) NOT NULL DEFAULT '',
298   "version" varchar(10) NOT NULL DEFAULT '',
299   PRIMARY KEY ("id"),
300   UNIQUE ("user_id","variant_id","pass_date")
301 );
302
303 # --------------------------------------------------------
304
305 #
306 # Table structure for table "cats_type"
307 #
308
309 DROP TABLE IF EXISTS "cats_type";
310 CREATE TABLE "cats_type" (
311   "id" serial NOT NULL,
312   "type_text" varchar(255) NOT NULL,
313   PRIMARY KEY ("id"),
314   UNIQUE ("type_text")
315 );
316
317 # Add values to table "cats_type"
318 INSERT INTO `cats_type` (`type_text`) VALUES ('Agent Qualifying Challenge');
319 INSERT INTO `cats_type` (`type_text`) VALUES ('Organisation Agent Qualifying Challenge');
320 INSERT INTO `cats_type` (`type_text`) VALUES ('TTP Agent Qualifying Challenge');
321 INSERT INTO `cats_type` (`type_text`) VALUES ('TTP TOPUP Agent Qualifying Challenge');
322 INSERT INTO `cats_type` (`type_text`) VALUES ('Code Signing Challenge');
323 INSERT INTO `cats_type` (`type_text`) VALUES ('Organisation Administrator Data Protection Challenge');
324 INSERT INTO `cats_type` (`type_text`) VALUES ('Support Data Protection Challenge');
325
326 DROP TABLE IF EXISTS "arbitrations";
327 CREATE TABLE IF NOT EXISTS "arbitrations" (
328   "user" int NOT NULL,
329   "arbitration" varchar(20) NOT NULL,
330   PRIMARY KEY ("user","arbitration")
331 );
332
333 DROP TABLE IF EXISTS "user_groups";
334
335 DROP TYPE IF EXISTS "userGroup";
336 CREATE TYPE "userGroup" AS enum('supporter','blocked-applicant','blocked-agent','blocked-login','ttp-agent','ttp-applicant', 'codesigning', 'org-agent', 'blocked-cert', 'nucleus-agent', 'locate-agent', 'verify-notification');
337
338 CREATE TABLE IF NOT EXISTS "user_groups" (
339   "id" serial NOT NULL,
340   "user" int NOT NULL,
341   "permission" "userGroup" NOT NULL,
342   "granted" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
343   "deleted" timestamp NULL DEFAULT NULL,
344   "grantedby" int NOT NULL,
345   "revokedby" int DEFAULT NULL,
346   PRIMARY KEY ("id")
347 );
348
349 DROP TABLE IF EXISTS "org_admin";
350
351 DROP TYPE IF EXISTS "yesno";
352 CREATE TYPE "yesno" AS enum('y', 'n');
353
354
355 CREATE TABLE IF NOT EXISTS "org_admin" (
356   "orgid" int NOT NULL,
357   "memid" int NOT NULL,
358   "master" "yesno" NOT NULL,
359   "creator" int NOT NULL,
360   "created" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
361   "deleter" int NULL DEFAULT NULL,
362   "deleted" timestamp NULL DEFAULT NULL
363 );
364 CREATE INDEX ON "org_admin"("orgid", "memid");
365
366
367 DROP TABLE IF EXISTS "adminLog";
368 CREATE TABLE "adminLog" (
369   "when" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
370   "uid" int NOT NULL,
371   "admin" int NOT NULL,
372   "type" varchar(100) NOT NULL DEFAULT '',
373   "information" varchar(50) NOT NULL DEFAULT ''
374 );
375 CREATE INDEX ON "adminLog"("when");
376
377
378 DROP TABLE IF EXISTS "schemeVersion";
379 CREATE TABLE "schemeVersion" (
380   "version" smallint NOT NULL,
381   PRIMARY KEY ("version")
382 );
383 INSERT INTO "schemeVersion" (version)  VALUES(35);
384
385 DROP TABLE IF EXISTS `passwordResetTickets`;
386 CREATE TABLE `passwordResetTickets` (
387   `id` serial NOT NULL,
388   `memid` int NOT NULL,
389   `creator` int NOT NULL,
390   `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
391   `used` timestamp NULL DEFAULT NULL,
392   `token` varchar(32) NOT NULL,
393   `private_token` varchar(255) NOT NULL,
394   PRIMARY KEY (`id`)
395 );
396
397
398 /* Create table countryIsoCode' */
399
400 DROP TABLE IF EXISTS `countryIsoCode`;
401 CREATE TABLE `countryIsoCode` (
402   `id` serial NOT NULL,
403   `english` text NOT NULL,
404   `code2` varchar(2) NOT NULL,
405   `code3` varchar(3) NOT NULL,
406   `obp_id` int NOT NULL,
407   PRIMARY KEY (`id`)
408 );
409
410 /* Fill table countryIsoCode' */
411 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Andorra', 'AD',  'AND',  020);
412 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('United Arab Emirates (the)',  'AE',  'ARE',  784);
413 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Afghanistan',  'AF',  'AFG',  004);
414 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Antigua and Barbuda',  'AG',  'ATG',  028);
415 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Anguilla',  'AI',  'AIA',  660);
416 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Albania',  'AL',  'ALB',  008);
417 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Armenia',  'AM',  'ARM',  051);
418 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Angola',  'AO',  'AGO',  024);
419 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Antarctica',  'AQ',  'ATA',  010);
420 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Argentina',  'AR',  'ARG',  032);
421 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('American Samoa',  'AS',  'ASM',  016);
422 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Austria',  'AT',  'AUT',  040);
423 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Australia',  'AU',  'AUS',  036);
424 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Aruba',  'AW',  'ABW',  533);
425 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Ă…land Islands',  'AX',  'ALA',  248);
426 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Azerbaijan',  'AZ',  'AZE',  031);
427 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bosnia and Herzegovina',  'BA',  'BIH',  070);
428 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Barbados',  'BB',  'BRB',  052);
429 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bangladesh',  'BD',  'BGD',  050);
430 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Belgium',  'BE',  'BEL',  056);
431 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Burkina Faso',  'BF',  'BFA',  854);
432 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bulgaria',  'BG',  'BGR',  100);
433 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bahrain',  'BH',  'BHR',  048);
434 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Burundi',  'BI',  'BDI',  108);
435 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Benin',  'BJ',  'BEN',  204);
436 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Saint BarthĂ©lemy',  'BL',  'BLM',  652);
437 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bermuda',  'BM',  'BMU',  060);
438 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Brunei Darussalam',  'BN',  'BRN',  096);
439 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bolivia (Plurinational State of)',  'BO',  'BOL',  068);
440 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bonaire, Sint Eustatius and Saba',  'BQ',  'BES',  535);
441 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Brazil',  'BR',  'BRA',  076);
442 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bahamas (the)',  'BS',  'BHS',  044);
443 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bhutan',  'BT',  'BTN',  064);
444 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Bouvet Island',  'BV',  'BVT',  074);
445 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Botswana',  'BW',  'BWA',  072);
446 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Belarus',  'BY',  'BLR',  112);
447 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Belize',  'BZ',  'BLZ',  084);
448 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Canada',  'CA',  'CAN',  124);
449 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Cocos (Keeling) Islands (the)',  'CC',  'CCK',  166);
450 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Congo (the Democratic Republic of the)',  'CD',  'COD',  180);
451 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Central African Republic (the)',  'CF',  'CAF',  140);
452 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Congo (the)',  'CG',  'COG',  178);
453 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Switzerland',  'CH',  'CHE',  756);
454 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('CĂ´te d`Ivoire',  'CI',  'CIV',  384);
455 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Cook Islands (the)',  'CK',  'COK',  184);
456 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Chile',  'CL',  'CHL',  152);
457 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Cameroon',  'CM',  'CMR',  120);
458 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('China',  'CN',  'CHN',  156);
459 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Colombia',  'CO',  'COL',  170);
460 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Costa Rica',  'CR',  'CRI',  188);
461 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Cuba',  'CU',  'CUB',  192);
462 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Cabo Verde',  'CV',  'CPV',  132);
463 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Curaçao',  'CW',  'CUW',  531);
464 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Christmas Island',  'CX',  'CXR',  162);
465 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Cyprus',  'CY',  'CYP',  196);
466 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Czech Republic (the)',  'CZ',  'CZE',  203);
467 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Germany',  'DE',  'DEU',  276);
468 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Djibouti',  'DJ',  'DJI',  262);
469 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Denmark',  'DK',  'DNK',  208);
470 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Dominica',  'DM',  'DMA',  212);
471 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Dominican Republic (the)',  'DO',  'DOM',  214);
472 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Algeria',  'DZ',  'DZA',  012);
473 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Ecuador',  'EC',  'ECU',  218);
474 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Estonia',  'EE',  'EST',  233);
475 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Egypt',  'EG',  'EGY',  818);
476 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Western Sahara*',  'EH',  'ESH',  732);
477 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Eritrea',  'ER',  'ERI',  232);
478 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Spain',  'ES',  'ESP',  724);
479 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Ethiopia',  'ET',  'ETH',  231);
480 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Finland',  'FI',  'FIN',  246);
481 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Fiji',  'FJ',  'FJI',  242);
482 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Falkland Islands (the) [Malvinas]',  'FK',  'FLK',  238);
483 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Micronesia (Federated States of)',  'FM',  'FSM',  583);
484 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Faroe Islands (the)',  'FO',  'FRO',  234);
485 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('France',  'FR',  'FRA',  250);
486 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Gabon',  'GA',  'GAB',  266);
487 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('United Kingdom of Great Britain and Northern Ireland (the)',  'GB',  'GBR',  826);
488 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Grenada',  'GD',  'GRD',  308);
489 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Georgia',  'GE',  'GEO',  268);
490 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('French Guiana',  'GF',  'GUF',  254);
491 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Guernsey',  'GG',  'GGY',  831);
492 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Ghana',  'GH',  'GHA',  288);
493 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Gibraltar',  'GI',  'GIB',  292);
494 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Greenland',  'GL',  'GRL',  304);
495 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Gambia (the)',  'GM',  'GMB',  270);
496 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Guinea',  'GN',  'GIN',  324);
497 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Guadeloupe',  'GP',  'GLP',  312);
498 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Equatorial Guinea',  'GQ',  'GNQ',  226);
499 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Greece',  'GR',  'GRC',  300);
500 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('South Georgia and the South Sandwich Islands',  'GS',  'SGS',  239);
501 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Guatemala',  'GT',  'GTM',  320);
502 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Guam',  'GU',  'GUM',  316);
503 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Guinea-Bissau',  'GW',  'GNB',  624);
504 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Guyana',  'GY',  'GUY',  328);
505 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Hong Kong',  'HK',  'HKG',  344);
506 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Heard Island and McDonald Islands',  'HM',  'HMD',  334);
507 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Honduras',  'HN',  'HND',  340);
508 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Croatia',  'HR',  'HRV',  191);
509 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Haiti',  'HT',  'HTI',  332);
510 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Hungary',  'HU',  'HUN',  348);
511 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Indonesia',  'ID',  'IDN',  360);
512 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Ireland',  'IE',  'IRL',  372);
513 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Israel',  'IL',  'ISR',  376);
514 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Isle of Man',  'IM',  'IMN',  833);
515 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('India',  'IN',  'IND',  356);
516 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('British Indian Ocean Territory (the)',  'IO',  'IOT',  086);
517 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Iraq',  'IQ',  'IRQ',  368);
518 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Iran (Islamic Republic of)',  'IR',  'IRN',  364);
519 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Iceland',  'IS',  'ISL',  352);
520 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Italy',  'IT',  'ITA',  380);
521 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Jersey',  'JE',  'JEY',  832);
522 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Jamaica',  'JM',  'JAM',  388);
523 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Jordan',  'JO',  'JOR',  400);
524 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Japan',  'JP',  'JPN',  392);
525 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Kenya',  'KE',  'KEN',  404);
526 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Kyrgyzstan',  'KG',  'KGZ',  417);
527 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Cambodia',  'KH',  'KHM',  116);
528 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Kiribati',  'KI',  'KIR',  296);
529 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Comoros (the)',  'KM',  'COM',  174);
530 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Saint Kitts and Nevis',  'KN',  'KNA',  659);
531 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Korea (the Democratic People`s Republic of)',  'KP',  'PRK',  408);
532 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Korea (the Republic of)',  'KR',  'KOR',  410);
533 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Kuwait',  'KW',  'KWT',  414);
534 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Cayman Islands (the)',  'KY',  'CYM',  136);
535 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Kazakhstan',  'KZ',  'KAZ',  398);
536 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Lao People`s Democratic Republic (the)',  'LA',  'LAO',  418);
537 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Lebanon',  'LB',  'LBN',  422);
538 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Saint Lucia',  'LC',  'LCA',  662);
539 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Liechtenstein',  'LI',  'LIE',  438);
540 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Sri Lanka',  'LK',  'LKA',  144);
541 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Liberia',  'LR',  'LBR',  430);
542 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Lesotho',  'LS',  'LSO',  426);
543 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Lithuania',  'LT',  'LTU',  440);
544 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Luxembourg',  'LU',  'LUX',  442);
545 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Latvia',  'LV',  'LVA',  428);
546 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Libya',  'LY',  'LBY',  434);
547 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Morocco',  'MA',  'MAR',  504);
548 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Monaco',  'MC',  'MCO',  492);
549 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Moldova (the Republic of)',  'MD',  'MDA',  498);
550 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Montenegro',  'ME',  'MNE',  499);
551 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Saint Martin (French part)',  'MF',  'MAF',  663);
552 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Madagascar',  'MG',  'MDG',  450);
553 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Marshall Islands (the)',  'MH',  'MHL',  584);
554 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Macedonia (the former Yugoslav Republic of)',  'MK',  'MKD',  807);
555 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Mali',  'ML',  'MLI',  466);
556 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Myanmar',  'MM',  'MMR',  104);
557 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Mongolia',  'MN',  'MNG',  496);
558 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Macao',  'MO',  'MAC',  446);
559 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Northern Mariana Islands (the)',  'MP',  'MNP',  580);
560 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Martinique',  'MQ',  'MTQ',  474);
561 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Mauritania',  'MR',  'MRT',  478);
562 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Montserrat',  'MS',  'MSR',  500);
563 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Malta',  'MT',  'MLT',  470);
564 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Mauritius',  'MU',  'MUS',  480);
565 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Maldives',  'MV',  'MDV',  462);
566 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Malawi',  'MW',  'MWI',  454);
567 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Mexico',  'MX',  'MEX',  484);
568 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Malaysia',  'MY',  'MYS',  458);
569 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Mozambique',  'MZ',  'MOZ',  508);
570 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Namibia',  'NA',  'NAM',  516);
571 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('New Caledonia',  'NC',  'NCL',  540);
572 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Niger (the)',  'NE',  'NER',  562);
573 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Norfolk Island',  'NF',  'NFK',  574);
574 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Nigeria',  'NG',  'NGA',  566);
575 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Nicaragua',  'NI',  'NIC',  558);
576 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Netherlands (the)',  'NL',  'NLD',  528);
577 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Norway',  'NO',  'NOR',  578);
578 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Nepal',  'NP',  'NPL',  524);
579 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Nauru',  'NR',  'NRU',  520);
580 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Niue',  'NU',  'NIU',  570);
581 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('New Zealand',  'NZ',  'NZL',  554);
582 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Oman',  'OM',  'OMN',  512);
583 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Panama',  'PA',  'PAN',  591);
584 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Peru',  'PE',  'PER',  604);
585 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('French Polynesia',  'PF',  'PYF',  258);
586 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Papua New Guinea',  'PG',  'PNG',  598);
587 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Philippines (the)',  'PH',  'PHL',  608);
588 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Pakistan',  'PK',  'PAK',  586);
589 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Poland',  'PL',  'POL',  616);
590 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Saint Pierre and Miquelon',  'PM',  'SPM',  666);
591 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Pitcairn',  'PN',  'PCN',  612);
592 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Puerto Rico',  'PR',  'PRI',  630);
593 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Palestine,  State of',  'PS',  'PSE',  275);
594 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Portugal',  'PT',  'PRT',  620);
595 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Palau',  'PW',  'PLW',  585);
596 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Paraguay',  'PY',  'PRY',  600);
597 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Qatar',  'QA',  'QAT',  634);
598 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('RĂ©union',  'RE',  'REU',  638);
599 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Romania',  'RO',  'ROU',  642);
600 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Serbia',  'RS',  'SRB',  688);
601 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Russian Federation (the)',  'RU',  'RUS',  643);
602 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Rwanda',  'RW',  'RWA',  646);
603 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Saudi Arabia',  'SA',  'SAU',  682);
604 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Solomon Islands',  'SB',  'SLB',  090);
605 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Seychelles',  'SC',  'SYC',  690);
606 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Sudan (the)',  'SD',  'SDN',  729);
607 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Sweden',  'SE',  'SWE',  752);
608 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Singapore',  'SG',  'SGP',  702);
609 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Saint Helena, Ascension and Tristan da Cunha',  'SH',  'SHN',  654);
610 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Slovenia',  'SI',  'SVN',  705);
611 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Svalbard and Jan Mayen',  'SJ',  'SJM',  744);
612 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Slovakia',  'SK',  'SVK',  703);
613 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Sierra Leone',  'SL',  'SLE',  694);
614 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('San Marino',  'SM',  'SMR',  674);
615 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Senegal',  'SN',  'SEN',  686);
616 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Somalia',  'SO',  'SOM',  706);
617 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Suriname',  'SR',  'SUR',  740);
618 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('South Sudan',  'SS',  'SSD',  728);
619 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Sao Tome and Principe',  'ST',  'STP',  678);
620 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('El Salvador',  'SV',  'SLV',  222);
621 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Sint Maarten (Dutch part)',  'SX',  'SXM',  534);
622 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Syrian Arab Republic',  'SY',  'SYR',  760);
623 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Swaziland',  'SZ',  'SWZ',  748);
624 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Turks and Caicos Islands (the)',  'TC',  'TCA',  796);
625 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Chad',  'TD',  'TCD',  148);
626 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('French Southern Territories (the)',  'TF',  'ATF',  260);
627 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Togo',  'TG',  'TGO',  768);
628 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Thailand',  'TH',  'THA',  764);
629 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Tajikistan',  'TJ',  'TJK',  762);
630 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Tokelau',  'TK',  'TKL',  772);
631 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Timor-Leste',  'TL',  'TLS',  626);
632 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Turkmenistan',  'TM',  'TKM',  795);
633 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Tunisia',  'TN',  'TUN',  788);
634 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Tonga',  'TO',  'TON',  776);
635 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Turkey',  'TR',  'TUR',  792);
636 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Trinidad and Tobago',  'TT',  'TTO',  780);
637 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Tuvalu',  'TV',  'TUV',  798);
638 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Taiwan (Province of China)',  'TW',  'TWN',  158);
639 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Tanzania,  United Republic of',  'TZ',  'TZA',  834);
640 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Ukraine',  'UA',  'UKR',  804);
641 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Uganda',  'UG',  'UGA',  800);
642 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('United States Minor Outlying Islands (the)',  'UM',  'UMI',  581);
643 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('United States of America (the)',  'US',  'USA',  840);
644 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Uruguay',  'UY',  'URY',  858);
645 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Uzbekistan',  'UZ',  'UZB',  860);
646 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Holy See (the)',  'VA',  'VAT',  336);
647 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Saint Vincent and the Grenadines',  'VC',  'VCT',  670);
648 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Venezuela (Bolivarian Republic of)',  'VE',  'VEN',  862);
649 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Virgin Islands (British)',  'VG',  'VGB',  092);
650 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Virgin Islands (U.S.)',  'VI',  'VIR',  850);
651 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Viet Nam',  'VN',  'VNM',  704);
652 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Vanuatu',  'VU',  'VUT',  548);
653 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Wallis and Futuna',  'WF',  'WLF',  876);
654 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Samoa',  'WS',  'WSM',  882);
655 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Yemen',  'YE',  'YEM',  887);
656 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Mayotte',  'YT',  'MYT',  175);
657 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('South Africa',  'ZA',  'ZAF',  710);
658 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Zambia',  'ZM',  'ZMB',  894);
659 INSERT INTO `countryIsoCode`(english, code2, code3, obp_id) VALUES ('Zimbabwe',  'ZW',  'ZWE',  716);
660
661
662
663 DROP TABLE IF EXISTS "names";
664 DROP TYPE IF EXISTS "nameSchemaType";
665 CREATE TYPE "nameSchemaType" AS ENUM ('single', 'western');
666
667 CREATE TABLE "names" (
668   "id" serial NOT NULL,
669   "uid" int NOT NULL,
670   "type" "nameSchemaType" NOT NULL,
671   "created" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
672   "deleted" timestamp NULL DEFAULT NULL,
673   "deprecated" timestamp NULL DEFAULT NULL,
674   PRIMARY KEY ("id")
675 );
676
677
678 DROP TABLE IF EXISTS "nameParts";
679 DROP TYPE IF EXISTS "namePartType";
680 CREATE TYPE "namePartType" AS ENUM ('first-name', 'last-name', 'single-name', 'suffix');
681
682 CREATE TABLE "nameParts" (
683   "id" int NOT NULL,
684   "position" int NOT NULL,
685   "type" "namePartType" NOT NULL,
686   "value" varchar(255) NOT NULL
687 );
688
689
690 DROP TABLE IF EXISTS "certificateAttachment";
691 DROP TYPE IF EXISTS "certificateAttachmentType";
692 CREATE TYPE "certificateAttachmentType" AS ENUM ('CSR','CRT');
693
694 CREATE TABLE "certificateAttachment" (
695   "certid" int NOT NULL,
696   "type" "certificateAttachmentType" NOT NULL,
697   "content" text NOT NULL,
698   PRIMARY KEY ("certid", "type")
699 );
700
701 DROP TABLE IF EXISTS "jobLog";
702 CREATE TABLE "jobLog" (
703   "jobid" int NOT NULL,
704   "attempt" smallint NOT NULL,
705   "content" text NOT NULL,
706   PRIMARY KEY ("jobid", "attempt")
707 );
708 CREATE INDEX ON "jobLog" ("jobid");