]> ruin.nu Git - ndwebbie.git/commitdiff
Updated schema
authorMichael Andreen <harv@ruin.nu>
Sun, 30 Mar 2008 15:42:37 +0000 (17:42 +0200)
committerMichael Andreen <harv@ruin.nu>
Sun, 30 Mar 2008 15:42:37 +0000 (17:42 +0200)
database/enums.sql [deleted file]
database/ndawn.sql

diff --git a/database/enums.sql b/database/enums.sql
deleted file mode 100644 (file)
index 31223f7..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-CREATE TYPE ead_status AS ENUM ('','NAP','Friendly','Hostile');
-
-DROP VIEW current_planet_stats_full;
-
-DROP VIEW current_planet_stats;
-
-ALTER TABLE planets ALTER COLUMN planet_status TYPE ead_status USING planet_status::ead_status;
-ALTER TABLE planets ALTER COLUMN planet_status SET DEFAULT ''::ead_status;
-UPDATE planets SET planet_status = '' WHERE planet_status IS NULL;
-ALTER TABLE planets ALTER COLUMN planet_status SET NOT NULL;
-
-ALTER TABLE alliances ALTER COLUMN relationship TYPE ead_status USING relationship::ead_status;
-ALTER TABLE alliances ALTER COLUMN relationship SET DEFAULT ''::ead_status;
-UPDATE alliances SET relationship = '' WHERE relationship IS NULL;
-ALTER TABLE alliances ALTER COLUMN relationship SET NOT NULL;
-
-
-CREATE VIEW current_planet_stats AS
-    SELECT p.id, p.nick, p.planet_status, p.hit_us, ps.x, ps.y, ps.z, p.ruler, p.planet, p.race, ps.size, ps.score, ps.value, ps.xp, ps.sizerank, ps.scorerank, ps.valuerank, ps.xprank, alliances.name AS alliance, alliances.relationship, p.alliance_id, p.channel, p.ftid FROM (((SELECT planet_stats.id, planet_stats.tick, planet_stats.x, planet_stats.y, planet_stats.z, planet_stats.size, planet_stats.score, planet_stats.value, planet_stats.xp, planet_stats.sizerank, planet_stats.scorerank, planet_stats.valuerank, planet_stats.xprank FROM planet_stats WHERE (planet_stats.tick = (SELECT max(planet_stats.tick) AS max FROM planet_stats))) ps NATURAL JOIN planets p) LEFT JOIN alliances ON ((alliances.id = p.alliance_id)));
-
-
-CREATE VIEW current_planet_stats_full AS
-    SELECT p.id, p.nick, p.planet_status, p.hit_us, ps.x, ps.y, ps.z, p.ruler, p.planet, p.race, ps.size, ps.score, ps.value, ps.xp, ps.sizerank, ps.scorerank, ps.valuerank, ps.xprank, alliances.name AS alliance, alliances.relationship, p.alliance_id, p.channel, p.ftid, ps.size_gain, ps.score_gain, ps.value_gain, ps.xp_gain, ps.sizerank_gain, ps.scorerank_gain, ps.valuerank_gain, ps.xprank_gain, ps.size_gain_day, ps.score_gain_day, ps.value_gain_day, ps.xp_gain_day, ps.sizerank_gain_day, ps.scorerank_gain_day, ps.valuerank_gain_day, ps.xprank_gain_day FROM (((SELECT planet_stats.id, planet_stats.tick, planet_stats.x, planet_stats.y, planet_stats.z, planet_stats.size, planet_stats.score, planet_stats.value, planet_stats.xp, planet_stats.sizerank, planet_stats.scorerank, planet_stats.valuerank, planet_stats.xprank, planet_stats.size_gain, planet_stats.score_gain, planet_stats.value_gain, planet_stats.xp_gain, planet_stats.sizerank_gain, planet_stats.scorerank_gain, planet_stats.valuerank_gain, planet_stats.xprank_gain, planet_stats.size_gain_day, planet_stats.score_gain_day, planet_stats.value_gain_day, planet_stats.xp_gain_day, planet_stats.sizerank_gain_day, planet_stats.scorerank_gain_day, planet_stats.valuerank_gain_day, planet_stats.xprank_gain_day FROM planet_stats WHERE (planet_stats.tick = (SELECT max(planet_stats.tick) AS max FROM planet_stats))) ps NATURAL JOIN planets p) LEFT JOIN alliances ON ((alliances.id = p.alliance_id)));
-
-
-CREATE OR REPLACE FUNCTION find_alliance_id(character varying) RETURNS integer
-    AS $_$
-my ($name) = @_;
-my $query = spi_prepare('SELECT id FROM alliances WHERE name=$1','varchar');
-my $rv = spi_exec_prepared($query,$name);
-my $status = $rv->{status};
-my $nrows = $rv->{processed};
-my $id;
-if ($nrows == 1){
-       $id = $rv->{rows}[0]->{id};
-}
-else {
-       $rv = spi_exec_query("SELECT nextval('public.alliances_id_seq') AS id");
-       if ($rv->{processed} != 1){
-               return;
-       }
-       $id = $rv->{rows}[0]->{id};
-       my $query = spi_prepare('INSERT INTO alliances(id,name) VALUES($1,$2)','int4','varchar');
-       $rv = spi_exec_prepared($query,$id,$name);
-       spi_freeplan($query);
-       if (rv->{status} != SPI_OK_INSERT){
-               return;
-       }
-}
-return $id;
-$_$
-    LANGUAGE plperl;
index cb9b5b651b9cc64379b1b87e5ea8b5c9679cb200..2c19924f1bbad3560fdb15f2d76b0fcdebe67b2d 100644 (file)
@@ -53,6 +53,18 @@ CREATE TABLE alliance_stats (
 );
 
 
+--
+-- Name: ead_status; Type: TYPE; Schema: public; Owner: -
+--
+
+CREATE TYPE ead_status AS ENUM (
+    '',
+    'NAP',
+    'Friendly',
+    'Hostile'
+);
+
+
 --
 -- Name: alliances; Type: TABLE; Schema: public; Owner: -; Tablespace: 
 --
@@ -60,7 +72,7 @@ CREATE TABLE alliance_stats (
 CREATE TABLE alliances (
     id integer NOT NULL,
     name character varying NOT NULL,
-    relationship text
+    relationship ead_status DEFAULT ''::ead_status NOT NULL
 );
 
 
@@ -160,7 +172,7 @@ CREATE TABLE planets (
     planet character varying NOT NULL,
     race character varying,
     nick character varying,
-    planet_status text,
+    planet_status ead_status DEFAULT ''::ead_status NOT NULL,
     hit_us integer DEFAULT 0 NOT NULL,
     alliance_id integer,
     channel text,
@@ -964,8 +976,8 @@ return "$x:$y:$z";$_$
 --
 
 CREATE FUNCTION find_alliance_id(character varying) RETURNS integer
-    AS $_$my ($name) = @_;
-print "test";
+    AS $_$
+my ($name) = @_;
 my $query = spi_prepare('SELECT id FROM alliances WHERE name=$1','varchar');
 my $rv = spi_exec_prepared($query,$name);
 my $status = $rv->{status};
@@ -980,14 +992,15 @@ else {
                return;
        }
        $id = $rv->{rows}[0]->{id};
-       my $query = spi_prepare('INSERT INTO alliances(id,name,relationship) VALUES($1,$2,NULL)','int4','varchar');
+       my $query = spi_prepare('INSERT INTO alliances(id,name) VALUES($1,$2)','int4','varchar');
        $rv = spi_exec_prepared($query,$id,$name);
        spi_freeplan($query);
        if (rv->{status} != SPI_OK_INSERT){
                return;
        }
 }
-return $id;$_$
+return $id;
+$_$
     LANGUAGE plperl;
 
 
@@ -1222,6 +1235,7 @@ ALTER SEQUENCE alliances_id_seq OWNED BY alliances.id;
 --
 
 CREATE SEQUENCE calls_id_seq
+    START WITH 1
     INCREMENT BY 1
     NO MAXVALUE
     NO MINVALUE
@@ -1276,6 +1290,7 @@ ALTER SEQUENCE channels_id_seq OWNED BY channels.id;
 --
 
 CREATE SEQUENCE defense_requests_id_seq
+    START WITH 1
     INCREMENT BY 1
     NO MAXVALUE
     NO MINVALUE
@@ -1420,6 +1435,7 @@ ALTER SEQUENCE groups_gid_seq OWNED BY groups.gid;
 --
 
 CREATE SEQUENCE incomings_id_seq
+    START WITH 1
     INCREMENT BY 1
     NO MAXVALUE
     NO MINVALUE
@@ -1474,6 +1490,7 @@ ALTER SEQUENCE planets_id_seq OWNED BY planets.id;
 --
 
 CREATE SEQUENCE raid_targets_id_seq
+    START WITH 1
     INCREMENT BY 1
     NO MAXVALUE
     NO MINVALUE
@@ -1492,6 +1509,7 @@ ALTER SEQUENCE raid_targets_id_seq OWNED BY raid_targets.id;
 --
 
 CREATE SEQUENCE raids_id_seq
+    START WITH 1
     INCREMENT BY 1
     NO MAXVALUE
     NO MINVALUE
@@ -1510,6 +1528,7 @@ ALTER SEQUENCE raids_id_seq OWNED BY raids.id;
 --
 
 CREATE SEQUENCE scans_id_seq
+    START WITH 1
     INCREMENT BY 1
     NO MAXVALUE
     NO MINVALUE
@@ -1997,14 +2016,6 @@ ALTER TABLE ONLY planet_stats
     ADD CONSTRAINT planet_stats_pkey PRIMARY KEY (tick, x, y, z);
 
 
---
--- Name: planet_stats_x_key; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
---
-
-ALTER TABLE ONLY planet_stats
-    ADD CONSTRAINT planet_stats_x_key UNIQUE (x, y, z, tick);
-
-
 --
 -- Name: planets_ftid_key; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
 --