New default value for ship types: 0 and not null
[ais.git] / structure.sql
1 --
2 -- PostgreSQL database dump
3 --
4
5 SET client_encoding = 'UTF8';
6 SET standard_conforming_strings = off;
7 SET check_function_bodies = false;
8 SET client_min_messages = warning;
9 SET escape_string_warning = off;
10
11 SET search_path = public, pg_catalog;
12
13 SET default_tablespace = '';
14
15 SET default_with_oids = false;
16
17 --
18 -- Name: fleet; Type: TABLE; Schema: public; Owner: -; Tablespace: 
19 --
20
21 CREATE TABLE fleet (
22     name character varying(50) NOT NULL,
23     description text DEFAULT ''::text NOT NULL,
24     created timestamp without time zone DEFAULT now() NOT NULL
25 );
26
27
28 --
29 -- Name: fleet_user; Type: TABLE; Schema: public; Owner: -; Tablespace: 
30 --
31
32 CREATE TABLE fleet_user (
33     id integer NOT NULL,
34     fleet character varying(50) NOT NULL,
35     user_id integer NOT NULL
36 );
37
38
39 --
40 -- Name: fleet_user_id_seq; Type: SEQUENCE; Schema: public; Owner: -
41 --
42
43 CREATE SEQUENCE fleet_user_id_seq
44     INCREMENT BY 1
45     NO MAXVALUE
46     NO MINVALUE
47     CACHE 1;
48
49
50 --
51 -- Name: fleet_user_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
52 --
53
54 ALTER SEQUENCE fleet_user_id_seq OWNED BY fleet_user.id;
55
56
57 --
58 -- Name: fleet_vessel; Type: TABLE; Schema: public; Owner: -; Tablespace: 
59 --
60
61 CREATE TABLE fleet_vessel (
62     id integer NOT NULL,
63     fleet character varying(50) NOT NULL,
64     mmsi integer NOT NULL
65 );
66
67
68 --
69 -- Name: fleet_vessel_id_seq; Type: SEQUENCE; Schema: public; Owner: -
70 --
71
72 CREATE SEQUENCE fleet_vessel_id_seq
73     INCREMENT BY 1
74     NO MAXVALUE
75     NO MINVALUE
76     CACHE 1;
77
78
79 --
80 -- Name: fleet_vessel_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
81 --
82
83 ALTER SEQUENCE fleet_vessel_id_seq OWNED BY fleet_vessel.id;
84
85
86 --
87 -- Name: mi_mmsi_i_seq; Type: SEQUENCE; Schema: public; Owner: -
88 --
89
90 CREATE SEQUENCE mi_mmsi_i_seq
91     INCREMENT BY 1
92     NO MAXVALUE
93     NO MINVALUE
94     CACHE 1;
95
96
97 --
98 -- Name: mi_source; Type: TABLE; Schema: public; Owner: -; Tablespace: 
99 --
100
101 CREATE TABLE mi_source (
102     id integer NOT NULL,
103     userid integer DEFAULT 0,
104     name text NOT NULL
105 );
106
107
108 --
109 -- Name: mi_source_id_seq; Type: SEQUENCE; Schema: public; Owner: -
110 --
111
112 CREATE SEQUENCE mi_source_id_seq
113     INCREMENT BY 1
114     NO MAXVALUE
115     NO MINVALUE
116     CACHE 1;
117
118
119 --
120 -- Name: mi_source_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
121 --
122
123 ALTER SEQUENCE mi_source_id_seq OWNED BY mi_source.id;
124
125
126 --
127 -- Name: mi_vessel; Type: TABLE; Schema: public; Owner: -; Tablespace: 
128 --
129
130 CREATE TABLE mi_vessel (
131     mmsi_txt character(9) NOT NULL
132 );
133
134
135 --
136 -- Name: news; Type: TABLE; Schema: public; Owner: -; Tablespace: 
137 --
138
139 CREATE TABLE news (
140     id integer NOT NULL,
141     updated timestamp without time zone DEFAULT now() NOT NULL,
142     title text NOT NULL,
143     txt text NOT NULL,
144     created timestamp without time zone DEFAULT now() NOT NULL
145 );
146
147
148 --
149 -- Name: news_id_seq; Type: SEQUENCE; Schema: public; Owner: -
150 --
151
152 CREATE SEQUENCE news_id_seq
153     INCREMENT BY 1
154     NO MAXVALUE
155     NO MINVALUE
156     CACHE 1;
157
158
159 --
160 -- Name: news_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
161 --
162
163 ALTER SEQUENCE news_id_seq OWNED BY news.id;
164
165
166 --
167 -- Name: plane; Type: TABLE; Schema: public; Owner: -; Tablespace: 
168 --
169
170 CREATE TABLE plane (
171     flight character varying(8),
172     reg character varying(8) NOT NULL,
173     ads character varying(8) NOT NULL,
174     type character varying(4),
175     usr character(2),
176     updated timestamp without time zone NOT NULL
177 );
178
179
180 --
181 -- Name: ppuser; Type: TABLE; Schema: public; Owner: -; Tablespace: 
182 --
183
184 CREATE TABLE ppuser (
185     usr character(2) NOT NULL,
186     lat double precision,
187     lon double precision
188 );
189
190
191 --
192 -- Name: user; Type: TABLE; Schema: public; Owner: -; Tablespace: 
193 --
194
195 CREATE TABLE "user" (
196     login character varying(16) NOT NULL,
197     password_hash character varying(75) NOT NULL,
198     name character varying(50) NOT NULL,
199     email character varying(75) NOT NULL,
200     id integer NOT NULL,
201     father_id integer,
202     creation_datetime timestamp without time zone DEFAULT now() NOT NULL,
203     phone character varying(20) DEFAULT ''::character varying NOT NULL,
204     access_datetime timestamp without time zone
205 );
206
207
208 --
209 -- Name: user_id_seq; Type: SEQUENCE; Schema: public; Owner: -
210 --
211
212 CREATE SEQUENCE user_id_seq
213     INCREMENT BY 1
214     NO MAXVALUE
215     NO MINVALUE
216     CACHE 1;
217
218
219 --
220 -- Name: user_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
221 --
222
223 ALTER SEQUENCE user_id_seq OWNED BY "user".id;
224
225
226 --
227 -- Name: user_message; Type: TABLE; Schema: public; Owner: -; Tablespace: 
228 --
229
230 CREATE TABLE user_message (
231     id integer NOT NULL,
232     user_id integer NOT NULL,
233     user_message_category_id character varying(10) NOT NULL,
234     txt text DEFAULT ''::text NOT NULL
235 );
236
237
238 --
239 -- Name: user_message_category; Type: TABLE; Schema: public; Owner: -; Tablespace: 
240 --
241
242 CREATE TABLE user_message_category (
243     id character varying(10) NOT NULL
244 );
245
246
247 --
248 -- Name: user_message_id_seq; Type: SEQUENCE; Schema: public; Owner: -
249 --
250
251 CREATE SEQUENCE user_message_id_seq
252     INCREMENT BY 1
253     NO MAXVALUE
254     NO MINVALUE
255     CACHE 1;
256
257
258 --
259 -- Name: user_message_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
260 --
261
262 ALTER SEQUENCE user_message_id_seq OWNED BY user_message.id;
263
264
265 --
266 -- Name: vessel; Type: TABLE; Schema: public; Owner: -; Tablespace: 
267 --
268
269 CREATE TABLE vessel (
270     callsign character varying(7),
271     updated timestamp without time zone DEFAULT now() NOT NULL,
272     name character varying(20),
273     type integer DEFAULT 0 NOT NULL,
274     source character varying(8),
275     mmsi integer NOT NULL,
276     imo integer,
277     destination character varying(20),
278     dim_bow integer DEFAULT 0 NOT NULL,
279     dim_stern integer DEFAULT 0 NOT NULL,
280     dim_port integer DEFAULT 0 NOT NULL,
281     dim_starboard integer DEFAULT 0 NOT NULL,
282     eta character varying(8) DEFAULT '00002460'::character varying NOT NULL
283 );
284
285
286 --
287 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
288 --
289
290 ALTER TABLE fleet_user ALTER COLUMN id SET DEFAULT nextval('fleet_user_id_seq'::regclass);
291
292
293 --
294 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
295 --
296
297 ALTER TABLE fleet_vessel ALTER COLUMN id SET DEFAULT nextval('fleet_vessel_id_seq'::regclass);
298
299
300 --
301 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
302 --
303
304 ALTER TABLE mi_source ALTER COLUMN id SET DEFAULT nextval('mi_source_id_seq'::regclass);
305
306
307 --
308 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
309 --
310
311 ALTER TABLE news ALTER COLUMN id SET DEFAULT nextval('news_id_seq'::regclass);
312
313
314 --
315 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
316 --
317
318 ALTER TABLE "user" ALTER COLUMN id SET DEFAULT nextval('user_id_seq'::regclass);
319
320
321 --
322 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
323 --
324
325 ALTER TABLE user_message ALTER COLUMN id SET DEFAULT nextval('user_message_id_seq'::regclass);
326
327
328 --
329 -- Name: fleet_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
330 --
331
332 ALTER TABLE ONLY fleet
333     ADD CONSTRAINT fleet_pkey PRIMARY KEY (name);
334
335
336 --
337 -- Name: fleet_user_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
338 --
339
340 ALTER TABLE ONLY fleet_user
341     ADD CONSTRAINT fleet_user_pkey PRIMARY KEY (id);
342
343
344 --
345 -- Name: fleet_user_pkey2; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
346 --
347
348 ALTER TABLE ONLY fleet_user
349     ADD CONSTRAINT fleet_user_pkey2 UNIQUE (fleet, user_id);
350
351
352 --
353 -- Name: fleet_vessel_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
354 --
355
356 ALTER TABLE ONLY fleet_vessel
357     ADD CONSTRAINT fleet_vessel_pkey PRIMARY KEY (id);
358
359
360 --
361 -- Name: fleet_vessel_pkey2; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
362 --
363
364 ALTER TABLE ONLY fleet_vessel
365     ADD CONSTRAINT fleet_vessel_pkey2 UNIQUE (fleet, mmsi);
366
367
368 --
369 -- Name: mi_source_name_key; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
370 --
371
372 ALTER TABLE ONLY mi_source
373     ADD CONSTRAINT mi_source_name_key UNIQUE (name);
374
375
376 --
377 -- Name: mi_source_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
378 --
379
380 ALTER TABLE ONLY mi_source
381     ADD CONSTRAINT mi_source_pkey PRIMARY KEY (id);
382
383
384 --
385 -- Name: mi_vessel_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
386 --
387
388 ALTER TABLE ONLY mi_vessel
389     ADD CONSTRAINT mi_vessel_pkey PRIMARY KEY (mmsi_txt);
390
391
392 --
393 -- Name: plane_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
394 --
395
396 ALTER TABLE ONLY plane
397     ADD CONSTRAINT plane_pkey PRIMARY KEY (reg, ads);
398
399
400 --
401 -- Name: ppuser_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
402 --
403
404 ALTER TABLE ONLY ppuser
405     ADD CONSTRAINT ppuser_pkey PRIMARY KEY (usr);
406
407
408 --
409 -- Name: user_login_unique; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
410 --
411
412 ALTER TABLE ONLY "user"
413     ADD CONSTRAINT user_login_unique UNIQUE (login);
414
415
416 --
417 -- Name: user_message_category_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
418 --
419
420 ALTER TABLE ONLY user_message_category
421     ADD CONSTRAINT user_message_category_pkey PRIMARY KEY (id);
422
423
424 --
425 -- Name: user_message_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
426 --
427
428 ALTER TABLE ONLY user_message
429     ADD CONSTRAINT user_message_pkey PRIMARY KEY (id);
430
431
432 --
433 -- Name: user_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
434 --
435
436 ALTER TABLE ONLY "user"
437     ADD CONSTRAINT user_pkey PRIMARY KEY (id);
438
439
440 --
441 -- Name: vessel_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
442 --
443
444 ALTER TABLE ONLY vessel
445     ADD CONSTRAINT vessel_pkey PRIMARY KEY (mmsi);
446
447
448 --
449 -- Name: user_message_user_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
450 --
451
452 CREATE INDEX user_message_user_idx ON user_message USING btree (user_id);
453
454
455 --
456 -- Name: fleet_user_fleet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
457 --
458
459 ALTER TABLE ONLY fleet_user
460     ADD CONSTRAINT fleet_user_fleet_fkey FOREIGN KEY (fleet) REFERENCES fleet(name) ON UPDATE CASCADE ON DELETE CASCADE;
461
462
463 --
464 -- Name: fleet_user_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
465 --
466
467 ALTER TABLE ONLY fleet_user
468     ADD CONSTRAINT fleet_user_user_id_fkey FOREIGN KEY (user_id) REFERENCES "user"(id) ON UPDATE CASCADE ON DELETE CASCADE;
469
470
471 --
472 -- Name: fleet_vessel_fleet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
473 --
474
475 ALTER TABLE ONLY fleet_vessel
476     ADD CONSTRAINT fleet_vessel_fleet_fkey FOREIGN KEY (fleet) REFERENCES fleet(name) ON UPDATE CASCADE ON DELETE CASCADE;
477
478
479 --
480 -- Name: fleet_vessel_mmsi_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
481 --
482
483 ALTER TABLE ONLY fleet_vessel
484     ADD CONSTRAINT fleet_vessel_mmsi_fkey FOREIGN KEY (mmsi) REFERENCES vessel(mmsi) ON UPDATE CASCADE ON DELETE CASCADE;
485
486
487 --
488 -- Name: user_father_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
489 --
490
491 ALTER TABLE ONLY "user"
492     ADD CONSTRAINT user_father_id_fkey FOREIGN KEY (father_id) REFERENCES "user"(id);
493
494
495 --
496 -- Name: user_message_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
497 --
498
499 ALTER TABLE ONLY user_message
500     ADD CONSTRAINT user_message_user_id_fkey FOREIGN KEY (user_message_category_id) REFERENCES user_message_category(id) ON UPDATE CASCADE ON DELETE CASCADE;
501
502
503 --
504 -- Name: user_message_user_message_category_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
505 --
506
507 ALTER TABLE ONLY user_message
508     ADD CONSTRAINT user_message_user_message_category_id_fkey FOREIGN KEY (user_message_category_id) REFERENCES user_message_category(id) ON UPDATE CASCADE ON DELETE CASCADE;
509
510
511 --
512 -- PostgreSQL database dump complete
513 --
514