add more to schema

trunk
vilmibm 2022-07-27 20:21:21 -05:00
parent 0075bc8836
commit 8fd90a5385
1 changed files with 30 additions and 2 deletions

View File

@ -2,10 +2,38 @@ CREATE TABLE accounts (
id serial PRIMARY KEY, id serial PRIMARY KEY,
name varchar(100) NOT NULL, name varchar(100) NOT NULL,
pwhash varchar(100) NOT NULL, pwhash varchar(100) NOT NULL,
god boolean DEFAULT FALSE god boolean NOT NULL DEFAULT FALSE
); );
CREATE TABLE sessions ( CREATE TABLE sessions (
session_id varchar(100) PRIMARY KEY, session_id varchar(100) PRIMARY KEY,
account integer references accounts(id) account integer references accounts ON DELETE CASCADE
);
CREATE TYPE perm AS ENUM ('owner', 'world');
-- owner = 1, world = 2
CREATE TABLE permissions (
id serial PRIMARY KEY,
read perm NOT NULL DEFAULT 'world',
write perm NOT NULL DEFAULT 'owner',
carry perm NOT NULL DEFAULT 'world',
exec perm NOT NULL DEFAULT 'owner'
);
CREATE TABLE objects (
id serial PRIMARY KEY,
shortname varchar(200) NOT NULL UNIQUE,
avatar boolean NOT NULL DEFAULT FALSE,
bedroom boolean NOT NULL DEFAULT FALSE,
data jsonb NOT NULL,
perms integer references permissions,
owner integer references accounts
);
CREATE TABLE contains (
container integer references objects ON DELETE RESTRICT,
contained integer references objects ON DELETE CASCADE
); );