123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- drop table if exists user_choice;
- drop table if exists choices;
- drop table if exists attachments;
- drop table if exists votes;
- drop table if exists user_group;
- drop table if exists groups;
- drop table if exists users;
- create table users (
- id INTEGER primary key autoincrement,
- email TEXT unique not null,
- password TEXT not null,
- name TEXT unique not null,
- organization TEXT,
- is_admin INTEGER default 0 not null,
- key TEXT
- );
- create table groups (
- id INTEGER primary key autoincrement,
- name TEXT unique not null,
- system INTEGER default 0 not null
- );
- create table user_group (
- id_user INTEGER,
- id_group INTEGER,
- FOREIGN KEY(id_user) REFERENCES users(id),
- FOREIGN KEY(id_group) REFERENCES groups(id),
- PRIMARY KEY(id_user, id_group)
- );
- create table votes (
- id INTEGER primary key autoincrement,
- title TEXT not null,
- description TEXT,
- category TEXT,
- date_begin INTEGER default CURRENT_TIMESTAMP not null,
- date_end INTEGER not null,
- is_transparent INTEGER default 1 not null,
- is_public INTEGER default 1 not null,
- is_multiplechoice INTEGER default 1 not null,
- is_weighted INTEGER default 0 not null,
- is_open INTEGER default 0 not null,
- is_terminated INTEGER default 0 not null,
- id_author INTEGER, -- :COMMENT:maethor:120528: not null ?
- id_group INTEGER default 1 not null,
- FOREIGN KEY(id_author) REFERENCES users(id)
- FOREIGN KEY(id_group) REFERENCES groups(id)
- );
- create table attachments (
- id INTEGER primary key autoincrement,
- url TEXT not null,
- id_vote INTEGER not null,
- FOREIGN KEY(id_vote) REFERENCES vote(id)
- );
- create table choices (
- id INTEGER primary key autoincrement,
- name TEXT not null,
- id_vote INTEGER not null,
- FOREIGN KEY(id_vote) REFERENCES vote(id)
- );
- create table user_choice (
- id_user INTEGER,
- id_choice INTEGER,
- weight INTEGER,
- FOREIGN KEY(id_user) REFERENCES users(id),
- FOREIGN KEY(id_choice) REFERENCES choices(id),
- PRIMARY KEY(id_user, id_choice)
- );
- -- Test data
- insert into users (email, password, name, organization, is_admin, key) values ("admin@admin.fr", "d033e22ae348aeb5660fc2140aec35850c4da997", "Toto (admin) Tata", "World corp", 1, "test"); -- mdp = admin
- insert into groups (id, name, system) values (1, "Tous", 1);
- insert into groups (name) values ("CA");
- insert into groups (name) values ("Membres");
|