github.com/benoitkugler/goacve@v0.0.0-20201217100549-151ce6e55dc8/server/vote/2db.sql (about)

     1  -- DO NOT EDIT - autogenerated by structgen
     2  CREATE TABLE candidats (
     3      id serial PRIMARY KEY,
     4      id_vote integer NOT NULL,
     5      label varchar NOT NULL
     6  );
     7  
     8  CREATE TABLE votes (
     9      id serial PRIMARY KEY,
    10      nom varchar NOT NULL,
    11      description varchar NOT NULL,
    12      is_qcm boolean NOT NULL,
    13      is_locked boolean NOT NULL
    14  );
    15  
    16  CREATE TABLE vote_personnes (
    17      id_vote integer NOT NULL,
    18      id_personne integer NOT NULL,
    19      time timestamp NOT NULL
    20  );
    21  
    22  CREATE TABLE vote_personne_candidats (
    23      id_vote integer NOT NULL,
    24      id_personne integer NOT NULL,
    25      id_candidat integer NOT NULL
    26  );
    27  
    28  ALTER TABLE candidats
    29      ADD FOREIGN KEY (id_vote) REFERENCES votes;
    30  
    31  ALTER TABLE vote_personnes
    32      ADD FOREIGN KEY (id_vote) REFERENCES votes;
    33  
    34  ALTER TABLE vote_personnes
    35      ADD FOREIGN KEY (id_personne) REFERENCES personnes;
    36  
    37  ALTER TABLE vote_personne_candidats
    38      ADD FOREIGN KEY (id_vote) REFERENCES votes;
    39  
    40  ALTER TABLE vote_personne_candidats
    41      ADD FOREIGN KEY (id_personne) REFERENCES personnes;
    42  
    43  ALTER TABLE vote_personne_candidats
    44      ADD FOREIGN KEY (id_candidat) REFERENCES candidats;
    45  
    46  ALTER TABLE candidats
    47      ADD UNIQUE (id, id_vote);
    48  
    49  ALTER TABLE vote_personnes
    50      ADD UNIQUE (id_personne, id_vote);
    51  
    52  ALTER TABLE vote_personne_candidats
    53      ADD FOREIGN KEY (id_vote, id_personne) REFERENCES vote_personnes (id_vote, id_personne);
    54  
    55  ALTER TABLE vote_personne_candidats
    56      ADD FOREIGN KEY (id_vote, id_candidat) REFERENCES candidats (id_vote, id);
    57  
    58  ALTER TABLE vote_personne_candidats
    59      ADD UNIQUE (id_vote, id_personne, id_candidat);
    60