sql/schéma.sql
author František Kučera <franta-hg@frantovo.cz>
Mon Mar 23 17:00:23 2009 +0100 (2009-03-23)
changeset 49 491d1055972e
parent 28 dbb434bd4b99
permissions -rw-r--r--
Metoda nebude deklarovat, že vrací HashMapu, ale jen Mapu – obecné rozhraní místo konkrétní implementace (uvnitř se stále používá HashMapa).
     1 -- Table: cil
     2 
     3 -- DROP TABLE cil;
     4 
     5 CREATE TABLE cil
     6 (
     7   id bigint NOT NULL,
     8   nazev character varying NOT NULL,
     9   url character varying, -- Odkaz na daný cíl – pokud je to např. webová stránka
    10   selekt character varying NOT NULL, -- SQL dotaz, kterým získáme ze zdrojové databáze: IP adresu (sloupeček "ip"), počet pokusů (sloupeček "pocet") o spamování a den pokusu (sloupeček "den"). To vše pro období od do (dva parametry dotazu) včetně.
    11   databaze character varying NOT NULL, -- Celé JNDI jméno datového zdroje – databáze, na které bude volán selekt.
    12   CONSTRAINT cil_pk PRIMARY KEY (id)
    13 )
    14 WITH (OIDS=FALSE);
    15 ALTER TABLE cil OWNER TO hrisnicispameri;
    16 COMMENT ON TABLE cil IS 'Definice cílu (oběti) spamování.';
    17 COMMENT ON COLUMN cil.url IS 'Odkaz na daný cíl – pokud je to např. webová stránka';
    18 COMMENT ON COLUMN cil.selekt IS 'SQL dotaz, kterým získáme ze zdrojové databáze: IP adresu (sloupeček "ip"), počet pokusů (sloupeček "pocet") o spamování a den pokusu (sloupeček "den"). To vše pro období od do (dva parametry dotazu) včetně.';
    19 COMMENT ON COLUMN cil.databaze IS 'Celé JNDI jméno datového zdroje – databáze, na které bude volán selekt.';
    20 
    21 
    22 -- Table: souhrn
    23 
    24 -- DROP TABLE souhrn;
    25 
    26 CREATE TABLE souhrn
    27 (
    28   den date NOT NULL,
    29   ip character varying NOT NULL, -- IP adresa hříšníka
    30   domena character varying, -- Doménové jméno hříšníka (překlad IP adresy)
    31   pocet bigint NOT NULL, -- Počet pokusů o spamování v daném dni
    32   cil bigint NOT NULL, -- Cíl útoku - spamování
    33   CONSTRAINT souhrn_pk PRIMARY KEY (den, ip, cil),
    34   CONSTRAINT souhrn_cil_fk FOREIGN KEY (cil)
    35       REFERENCES cil (id) MATCH SIMPLE
    36       ON UPDATE NO ACTION ON DELETE NO ACTION,
    37   CONSTRAINT souhrn_pocet CHECK (pocet > 0)
    38 )
    39 WITH (OIDS=FALSE);
    40 ALTER TABLE souhrn OWNER TO hrisnicispameri;
    41 COMMENT ON TABLE souhrn IS 'Denní souhrny hříšníků, kteří se pokusili spamovat některý z webů (cílů).';
    42 COMMENT ON COLUMN souhrn.ip IS 'IP adresa hříšníka';
    43 COMMENT ON COLUMN souhrn.domena IS 'Doménové jméno hříšníka (překlad IP adresy)';
    44 COMMENT ON COLUMN souhrn.pocet IS 'Počet pokusů o spamování v daném dni';
    45 COMMENT ON COLUMN souhrn.cil IS 'Cíl útoku - spamování';
    46