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