X-Git-Url: https://git.auder.net/?p=vchess.git;a=blobdiff_plain;f=server%2Fdb%2Fcreate.sql;h=e5cbfd7e54b29b3ef0cf058c0153178a07f3424e;hp=b98cfbb0753f9766f862367341feb76f587a5335;hb=bf20f404705c622a7bb7e458dacce37ecb7405a9;hpb=5d04793e1bce0d448b4ffc532f1e8eb47a72e972 diff --git a/server/db/create.sql b/server/db/create.sql index b98cfbb0..e5cbfd7e 100644 --- a/server/db/create.sql +++ b/server/db/create.sql @@ -1,86 +1,77 @@ -- Database should be in this folder, and named 'vchess.sqlite' create table Variants ( - id integer primary key, - name varchar unique, - description text + id integer primary key, + name varchar unique, + description text ); create table Users ( - id integer primary key, - name varchar unique, - email varchar unique, - loginToken varchar, - loginTime datetime, - sessionToken varchar, - notify boolean + id integer primary key, + name varchar unique, + email varchar unique, + loginToken varchar, + loginTime datetime, + sessionToken varchar, + notify boolean ); create table Problems ( - id integer primary key, - added datetime, - uid integer, - vid integer, - fen varchar, - instructions text, - solution text, - foreign key (uid) references Users(id), - foreign key (vid) references Variants(id) + id integer primary key, + added datetime, + uid integer, + vid integer, + fen varchar, + instructions text, + solution text, + foreign key (uid) references Users(id), + foreign key (vid) references Variants(id) ); -- All the following tables are for correspondance play only -- (Live games are stored only in browsers) create table Challenges ( - id integer primary key, - added datetime, - uid integer, - vid integer, - nbPlayers integer, - fen varchar, - timeControl varchar, - foreign key (uid) references Users(id), - foreign key (vid) references Variants(id) -); - --- Store informations about players who (potentially) accept a challenge -create table WillPlay ( - yes boolean, - cid integer, - uid integer, - foreign key (cid) references Challenges(id), - foreign key (uid) references Users(id) + id integer primary key, + added datetime, + uid integer, + target integer, + vid integer, + fen varchar, + timeControl varchar, + foreign key (uid) references Users(id), + foreign key (vid) references Variants(id) ); create table Games ( - id integer primary key, - vid integer, - fenStart varchar, --initial state - fen varchar, --current state - score varchar, - mainTime integer, - addTime integer, - foreign key (vid) references Variants(id) + id integer primary key, + vid integer, + fenStart varchar, --initial state + fen varchar, --current state + score varchar, + mainTime integer, + addTime integer, + foreign key (vid) references Variants(id) ); -- Store informations about players in a corr game create table Players ( - gid integer, - uid integer, - color character, - rtime integer, --remaining time in milliseconds - foreign key (gid) references Games(id), - foreign key (uid) references Users(id) + gid integer, + uid integer, + color character, + rtime integer, --remaining time in milliseconds + foreign key (gid) references Games(id), + foreign key (uid) references Users(id) ); create table Moves ( - gid integer, - move varchar, - message varchar, - played datetime, --when was this move played? - idx integer, --index of the move in the game - color character, --required for e.g. Marseillais Chess - foreign key (gid) references Games(id) + gid integer, + move varchar, + message varchar, + played datetime, --when was this move played? + idx integer, --index of the move in the game + color character, --required for e.g. Marseillais Chess + foreign key (gid) references Games(id) ); pragma foreign_keys = on;