api/migrations.sql

81 lines
2.2 KiB
MySQL
Raw Normal View History

2025-09-10 20:21:00 +03:00
CREATE TABLE users (
id BIGSERIAL PRIMARY KEY,
created_at TIMESTAMP WITH TIME ZONE NOT NULL,
updated_at TIMESTAMP WITH TIME ZONE NULL,
deleted_at TIMESTAMP WITH TIME ZONE NULL,
uuid VARCHAR(36) NOT NULL UNIQUE,
username VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL,
email VARCHAR(255) UNIQUE,
verified INT NOT NULL DEFAULT 0
);
2025-09-30 11:39:04 +03:00
CREATE TABLE sessions (
id BIGSERIAL PRIMARY KEY,
created_at TIMESTAMP WITH TIME ZONE NOT NULL,
updated_at TIMESTAMP WITH TIME ZONE NULL,
deleted_at TIMESTAMP WITH TIME ZONE NULL,
user_uuid VARCHAR(36) NOT NULL,
refresh_uuid VARCHAR(36) NOT NULL UNIQUE,
session_uuid VARCHAR(36) NOT NULL,
expires TIMESTAMP WITH TIME ZONE NULL
);
2025-09-10 20:21:00 +03:00
CREATE TABLE merch (
id BIGSERIAL PRIMARY KEY,
created_at TIMESTAMP WITH TIME ZONE NOT NULL,
updated_at TIMESTAMP WITH TIME ZONE NULL,
deleted_at TIMESTAMP WITH TIME ZONE NULL,
merch_uuid VARCHAR(36) NOT NULL UNIQUE,
2025-09-18 21:03:24 +03:00
user_uuid VARCHAR(36) NOT NULL,
2025-09-15 16:47:31 +03:00
name TEXT
2025-09-10 20:21:00 +03:00
);
CREATE TABLE origin_surugaya(
id BIGSERIAL PRIMARY KEY,
deleted_at TIMESTAMP WITH TIME ZONE NULL,
merch_uuid VARCHAR(36) NOT NULL UNIQUE,
2025-09-30 11:39:04 +03:00
link TEXT
2025-09-10 20:21:00 +03:00
);
CREATE TABLE origin_mandarake(
id BIGSERIAL PRIMARY KEY,
deleted_at TIMESTAMP WITH TIME ZONE NULL,
merch_uuid VARCHAR(36) NOT NULL UNIQUE,
2025-09-15 16:47:31 +03:00
link TEXT
2025-09-10 20:21:00 +03:00
);
2025-09-30 11:39:04 +03:00
CREATE TABLE prices(
2025-09-10 20:21:00 +03:00
id BIGSERIAL PRIMARY KEY,
created_at TIMESTAMP WITH TIME ZONE NOT NULL,
updated_at TIMESTAMP WITH TIME ZONE NULL,
deleted_at TIMESTAMP WITH TIME ZONE NULL,
2025-09-30 15:09:20 +03:00
merch_uuid VARCHAR(36) NOT NULL,
2025-09-30 11:39:04 +03:00
price INT NULL,
origin INT
2025-10-28 18:22:40 +03:00
);
CREATE TABLE labels(
id BIGSERIAL PRIMARY KEY,
created_at TIMESTAMP WITH TIME ZONE NOT NULL,
updated_at TIMESTAMP WITH TIME ZONE NULL,
deleted_at TIMESTAMP WITH TIME ZONE NULL,
user_uuid VARCHAR(36) NOT NULL,
label_uuid VARCHAR(36) NOT NULL,
name VARCHAR(255),
color VARCHAR(32),
bg_color VARCHAR(32)
);
2025-10-28 20:28:40 +03:00
CREATE TABLE card_labels (
2025-10-29 20:55:51 +03:00
id BIGSERIAL PRIMARY KEY,
2025-10-28 18:22:40 +03:00
user_uuid VARCHAR(36) NOT NULL,
label_uuid VARCHAR(36) NOT NULL,
merch_uuid VARCHAR(36) NOT NULL
);
2025-10-29 20:55:51 +03:00
ALTER TABLE card_labels
ADD CONSTRAINT card_labels_unique_user_label_merch
UNIQUE (user_uuid, label_uuid, merch_uuid);