b2c27f1d34b5f7b731515c00e816d7dfed1d397b
[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: plane; Type: TABLE; Schema: public; Owner: -; Tablespace: 
137 --
138
139 CREATE TABLE plane (
140     flight character varying(8),
141     reg character varying(8) NOT NULL,
142     ads character varying(8) NOT NULL,
143     type character varying(4),
144     usr character(2),
145     updated timestamp without time zone NOT NULL
146 );
147
148
149 --
150 -- Name: ppuser; Type: TABLE; Schema: public; Owner: -; Tablespace: 
151 --
152
153 CREATE TABLE ppuser (
154     usr character(2) NOT NULL,
155     lat double precision,
156     lon double precision
157 );
158
159
160 --
161 -- Name: user; Type: TABLE; Schema: public; Owner: -; Tablespace: 
162 --
163
164 CREATE TABLE "user" (
165     login character varying(16) NOT NULL,
166     password_hash character varying(75) NOT NULL,
167     name character varying(50) NOT NULL,
168     email character varying(75) NOT NULL,
169     id integer NOT NULL,
170     father_id integer,
171     creation_datetime timestamp without time zone DEFAULT now() NOT NULL,
172     phone character varying(20) DEFAULT ''::character varying NOT NULL
173 );
174
175
176 --
177 -- Name: user_id_seq; Type: SEQUENCE; Schema: public; Owner: -
178 --
179
180 CREATE SEQUENCE user_id_seq
181     INCREMENT BY 1
182     NO MAXVALUE
183     NO MINVALUE
184     CACHE 1;
185
186
187 --
188 -- Name: user_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
189 --
190
191 ALTER SEQUENCE user_id_seq OWNED BY "user".id;
192
193
194 --
195 -- Name: vessel; Type: TABLE; Schema: public; Owner: -; Tablespace: 
196 --
197
198 CREATE TABLE vessel (
199     callsign character varying(7),
200     updated timestamp without time zone DEFAULT now() NOT NULL,
201     name character varying(20),
202     type integer,
203     source character varying(8),
204     mmsi integer NOT NULL,
205     imo integer,
206     destination character varying(20)
207 );
208
209
210 --
211 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
212 --
213
214 ALTER TABLE fleet_user ALTER COLUMN id SET DEFAULT nextval('fleet_user_id_seq'::regclass);
215
216
217 --
218 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
219 --
220
221 ALTER TABLE fleet_vessel ALTER COLUMN id SET DEFAULT nextval('fleet_vessel_id_seq'::regclass);
222
223
224 --
225 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
226 --
227
228 ALTER TABLE mi_source ALTER COLUMN id SET DEFAULT nextval('mi_source_id_seq'::regclass);
229
230
231 --
232 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
233 --
234
235 ALTER TABLE "user" ALTER COLUMN id SET DEFAULT nextval('user_id_seq'::regclass);
236
237
238 --
239 -- Name: fleet_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
240 --
241
242 ALTER TABLE ONLY fleet
243     ADD CONSTRAINT fleet_pkey PRIMARY KEY (name);
244
245
246 --
247 -- Name: fleet_user_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
248 --
249
250 ALTER TABLE ONLY fleet_user
251     ADD CONSTRAINT fleet_user_pkey PRIMARY KEY (id);
252
253
254 --
255 -- Name: fleet_user_pkey2; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
256 --
257
258 ALTER TABLE ONLY fleet_user
259     ADD CONSTRAINT fleet_user_pkey2 UNIQUE (fleet, user_id);
260
261
262 --
263 -- Name: fleet_vessel_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
264 --
265
266 ALTER TABLE ONLY fleet_vessel
267     ADD CONSTRAINT fleet_vessel_pkey PRIMARY KEY (id);
268
269
270 --
271 -- Name: fleet_vessel_pkey2; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
272 --
273
274 ALTER TABLE ONLY fleet_vessel
275     ADD CONSTRAINT fleet_vessel_pkey2 UNIQUE (fleet, mmsi);
276
277
278 --
279 -- Name: mi_source_name_key; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
280 --
281
282 ALTER TABLE ONLY mi_source
283     ADD CONSTRAINT mi_source_name_key UNIQUE (name);
284
285
286 --
287 -- Name: mi_source_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
288 --
289
290 ALTER TABLE ONLY mi_source
291     ADD CONSTRAINT mi_source_pkey PRIMARY KEY (id);
292
293
294 --
295 -- Name: mi_vessel_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
296 --
297
298 ALTER TABLE ONLY mi_vessel
299     ADD CONSTRAINT mi_vessel_pkey PRIMARY KEY (mmsi_txt);
300
301
302 --
303 -- Name: plane_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
304 --
305
306 ALTER TABLE ONLY plane
307     ADD CONSTRAINT plane_pkey PRIMARY KEY (reg, ads);
308
309
310 --
311 -- Name: ppuser_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
312 --
313
314 ALTER TABLE ONLY ppuser
315     ADD CONSTRAINT ppuser_pkey PRIMARY KEY (usr);
316
317
318 --
319 -- Name: user_login_unique; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
320 --
321
322 ALTER TABLE ONLY "user"
323     ADD CONSTRAINT user_login_unique UNIQUE (login);
324
325
326 --
327 -- Name: user_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
328 --
329
330 ALTER TABLE ONLY "user"
331     ADD CONSTRAINT user_pkey PRIMARY KEY (id);
332
333
334 --
335 -- Name: vessel_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
336 --
337
338 ALTER TABLE ONLY vessel
339     ADD CONSTRAINT vessel_pkey PRIMARY KEY (mmsi);
340
341
342 --
343 -- Name: fleet_user_fleet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
344 --
345
346 ALTER TABLE ONLY fleet_user
347     ADD CONSTRAINT fleet_user_fleet_fkey FOREIGN KEY (fleet) REFERENCES fleet(name) ON UPDATE CASCADE ON DELETE CASCADE;
348
349
350 --
351 -- Name: fleet_user_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
352 --
353
354 ALTER TABLE ONLY fleet_user
355     ADD CONSTRAINT fleet_user_user_id_fkey FOREIGN KEY (user_id) REFERENCES "user"(id) ON UPDATE CASCADE ON DELETE CASCADE;
356
357
358 --
359 -- Name: fleet_vessel_fleet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
360 --
361
362 ALTER TABLE ONLY fleet_vessel
363     ADD CONSTRAINT fleet_vessel_fleet_fkey FOREIGN KEY (fleet) REFERENCES fleet(name) ON UPDATE CASCADE ON DELETE CASCADE;
364
365
366 --
367 -- Name: fleet_vessel_mmsi_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
368 --
369
370 ALTER TABLE ONLY fleet_vessel
371     ADD CONSTRAINT fleet_vessel_mmsi_fkey FOREIGN KEY (mmsi) REFERENCES vessel(mmsi) ON UPDATE CASCADE ON DELETE CASCADE;
372
373
374 --
375 -- Name: user_father_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
376 --
377
378 ALTER TABLE ONLY "user"
379     ADD CONSTRAINT user_father_id_fkey FOREIGN KEY (father_id) REFERENCES "user"(id);
380
381
382 --
383 -- PostgreSQL database dump complete
384 --
385