Files
api-server/migrations/20250310175116_tables.sql

60 lines
1.5 KiB
SQL

-- Add migration script here
CREATE TABLE IF NOT EXISTS users (
'id' INTEGER PRIMARY KEY NOT NULL,
'uuid' TEXT UNIQUE NOT NULL,
'username' TEXT NOT NULL,
'hash' TEXT NOT NULL,
'email' TEXT NOT NULL
);
CREATE TABLE IF NOT EXISTS inventories (
'id' INTEGER PRIMARY KEY NOT NULL,
'uuid' TEXT UNIQUE NOT NULL,
'user' INTEGER NOT NULL,
'money' FLOAT DEFAULT 0,
FOREIGN KEY ('user') REFERENCES users ('id')
);
CREATE TABLE IF NOT EXISTS user_items (
'id' INTEGER PRIMARY KEY NOT NULL,
'uuid' TEXT UNIQUE NOT NULL,
'inventory' INTEGER NOT NULL,
'item' INTEGER NOT NULL,
FOREIGN KEY ('inventory') REFERENCES inventories ('id'),
FOREIGN KEY ('item') REFERENCES items ('id')
);
CREATE TABLE IF NOT EXISTS items (
'id' INTEGER PRIMARY KEY NOT NULL,
'uuid' TEXT UNIQUE NOT NULL,
'name' TEXT NOT NULL,
'rarity' INTEGER NOT NULL,
'image' TEXT NOT NULL,
'price' FLOAT NOT NULL
);
CREATE TABLE IF NOT EXISTS cases (
'id' INTEGER PRIMARY KEY NOT NULL,
'uuid' TEXT UNIQUE NOT NULL,
'name' TEXT NOT NULL,
'image' TEXT NOT NULL,
'price' FLOAT NOT NULL
);
CREATE TABLE IF NOT EXISTS items_cases (
'item' INTEGER NOT NULL,
'case' INTEGER NOT NULL,
FOREIGN KEY ('item') REFERENCES items ('id'),
FOREIGN KEY ('case') REFERENCES cases ('id'),
PRIMARY KEY ('item', 'case')
);
CREATE TABLE IF NOT EXISTS refresh_tokens (
'id' INTEGER PRIMARY KEY,
'token' TEXT,
'previous' TEXT,
'user' INTEGER,
'expiry' INTEGER,
FOREIGN KEY ('user') REFERENCES users ('id')
);