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