replace job extension by a friendly filename.
[ais.git] / structure.sql
index 6d5bcf19f4e2b90c7d9b9166c516e323aa23daf3..3a7d03c507f5dfdb5d659278833c606500fe74b3 100644 (file)
@@ -21,18 +21,37 @@ SET default_with_oids = false;
 CREATE TABLE fleet (
     name character varying(50) NOT NULL,
     description text DEFAULT ''::text NOT NULL,
-    created timestamp without time zone DEFAULT now() NOT NULL
+    created timestamp without time zone DEFAULT now() NOT NULL,
+    id integer NOT NULL
 );
 
 
+--
+-- Name: fleet_id_seq; Type: SEQUENCE; Schema: public; Owner: -
+--
+
+CREATE SEQUENCE fleet_id_seq
+    INCREMENT BY 1
+    NO MAXVALUE
+    NO MINVALUE
+    CACHE 1;
+
+
+--
+-- Name: fleet_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
+--
+
+ALTER SEQUENCE fleet_id_seq OWNED BY fleet.id;
+
+
 --
 -- Name: fleet_user; Type: TABLE; Schema: public; Owner: -; Tablespace: 
 --
 
 CREATE TABLE fleet_user (
     id integer NOT NULL,
-    fleet character varying(50) NOT NULL,
-    user_id integer NOT NULL
+    user_id integer NOT NULL,
+    fleet_id integer NOT NULL
 );
 
 
@@ -60,8 +79,8 @@ ALTER SEQUENCE fleet_user_id_seq OWNED BY fleet_user.id;
 
 CREATE TABLE fleet_vessel (
     id integer NOT NULL,
-    fleet character varying(50) NOT NULL,
-    mmsi integer NOT NULL
+    mmsi integer NOT NULL,
+    fleet_id integer NOT NULL
 );
 
 
@@ -83,6 +102,24 @@ CREATE SEQUENCE fleet_vessel_id_seq
 ALTER SEQUENCE fleet_vessel_id_seq OWNED BY fleet_vessel.id;
 
 
+--
+-- Name: job; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE job (
+    id character(8) NOT NULL,
+    user_id integer,
+    queue_time timestamp without time zone DEFAULT now() NOT NULL,
+    start_time timestamp without time zone,
+    finish_time timestamp without time zone,
+    command text NOT NULL,
+    pid integer,
+    result integer,
+    archive_time timestamp without time zone,
+    friendly_filename character varying(255)
+);
+
+
 --
 -- Name: mi_mmsi_i_seq; Type: SEQUENCE; Schema: public; Owner: -
 --
@@ -270,7 +307,7 @@ CREATE TABLE vessel (
     callsign character varying(7),
     updated timestamp without time zone DEFAULT now() NOT NULL,
     name character varying(20),
-    type integer,
+    type integer DEFAULT 0 NOT NULL,
     source character varying(8),
     mmsi integer NOT NULL,
     imo integer,
@@ -283,6 +320,13 @@ CREATE TABLE vessel (
 );
 
 
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: -
+--
+
+ALTER TABLE fleet ALTER COLUMN id SET DEFAULT nextval('fleet_id_seq'::regclass);
+
+
 --
 -- Name: id; Type: DEFAULT; Schema: public; Owner: -
 --
@@ -330,7 +374,7 @@ ALTER TABLE user_message ALTER COLUMN id SET DEFAULT nextval('user_message_id_se
 --
 
 ALTER TABLE ONLY fleet
-    ADD CONSTRAINT fleet_pkey PRIMARY KEY (name);
+    ADD CONSTRAINT fleet_pkey PRIMARY KEY (id);
 
 
 --
@@ -346,7 +390,7 @@ ALTER TABLE ONLY fleet_user
 --
 
 ALTER TABLE ONLY fleet_user
-    ADD CONSTRAINT fleet_user_pkey2 UNIQUE (fleet, user_id);
+    ADD CONSTRAINT fleet_user_pkey2 UNIQUE (user_id, fleet_id);
 
 
 --
@@ -362,7 +406,15 @@ ALTER TABLE ONLY fleet_vessel
 --
 
 ALTER TABLE ONLY fleet_vessel
-    ADD CONSTRAINT fleet_vessel_pkey2 UNIQUE (fleet, mmsi);
+    ADD CONSTRAINT fleet_vessel_pkey2 UNIQUE (mmsi, fleet_id);
+
+
+--
+-- Name: job_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY job
+    ADD CONSTRAINT job_pkey PRIMARY KEY (id);
 
 
 --
@@ -445,6 +497,13 @@ ALTER TABLE ONLY vessel
     ADD CONSTRAINT vessel_pkey PRIMARY KEY (mmsi);
 
 
+--
+-- Name: job_user_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX job_user_id ON job USING btree (user_id);
+
+
 --
 -- Name: user_message_user_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
 --
@@ -453,11 +512,11 @@ CREATE INDEX user_message_user_idx ON user_message USING btree (user_id);
 
 
 --
--- Name: fleet_user_fleet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+-- Name: fleet_user_fleet_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY fleet_user
-    ADD CONSTRAINT fleet_user_fleet_fkey FOREIGN KEY (fleet) REFERENCES fleet(name) ON UPDATE CASCADE ON DELETE CASCADE;
+    ADD CONSTRAINT fleet_user_fleet_id_fkey FOREIGN KEY (fleet_id) REFERENCES fleet(id) ON UPDATE CASCADE ON DELETE CASCADE;
 
 
 --
@@ -469,11 +528,11 @@ ALTER TABLE ONLY fleet_user
 
 
 --
--- Name: fleet_vessel_fleet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+-- Name: fleet_vessel_fleet_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY fleet_vessel
-    ADD CONSTRAINT fleet_vessel_fleet_fkey FOREIGN KEY (fleet) REFERENCES fleet(name) ON UPDATE CASCADE ON DELETE CASCADE;
+    ADD CONSTRAINT fleet_vessel_fleet_id_fkey FOREIGN KEY (fleet_id) REFERENCES fleet(id) ON UPDATE CASCADE ON DELETE CASCADE;
 
 
 --
@@ -484,6 +543,14 @@ ALTER TABLE ONLY fleet_vessel
     ADD CONSTRAINT fleet_vessel_mmsi_fkey FOREIGN KEY (mmsi) REFERENCES vessel(mmsi) ON UPDATE CASCADE ON DELETE CASCADE;
 
 
+--
+-- Name: job_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY job
+    ADD CONSTRAINT job_user_id_fkey FOREIGN KEY (user_id) REFERENCES "user"(id) ON UPDATE CASCADE ON DELETE SET NULL;
+
+
 --
 -- Name: user_father_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
 --