diff options
author | tomsmeding <tom.smeding@gmail.com> | 2017-03-14 11:05:35 +0100 |
---|---|---|
committer | tomsmeding <tom.smeding@gmail.com> | 2017-03-14 11:05:35 +0100 |
commit | 54064158d84fc4006e651deb314cde156cc383e8 (patch) | |
tree | a534f160fe02b593143e03aaaf52f65513352c90 /schema.sql |
Register working
Diffstat (limited to 'schema.sql')
-rw-r--r-- | schema.sql | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/schema.sql b/schema.sql new file mode 100644 index 0000000..5a888d6 --- /dev/null +++ b/schema.sql @@ -0,0 +1,43 @@ +pragma foreign_keys = on; + +create table Rooms ( + id integer primary key, + name text +); + +create table RoomNames ( + name text primary key, + room integer not null, + foreign key(room) references Rooms(id) on delete cascade +); + +create table Members ( + room integer, + user integer, + primary key(room, user), + foreign key(room) references Rooms(id) on delete cascade, + foreign key(user) references Users(id) on delete cascade +); + +create table Users ( + id integer primary key, + username text, + pass text +); + +create table UserNames ( + name text primary key, + user integer, + foreign key(user) references Users(id) on delete cascade +); + +create table Messages ( + id integer primary key, + room integer not null, + user integer null, + time integer not null, + message text, + foreign key(room) references Rooms(id) on delete cascade, + foreign key(user) references Users(id) on delete set null +); +create index messages_time_index on Messages(time); |