beteran-server-service/migrations/202206181200_resource/up.sql
2022-08-06 11:37:51 +00:00

25 lines
807 B
SQL

CREATE TABLE IF NOT EXISTS resources (
id UUID DEFAULT uuid_generate_v4(),
parent_id UUID,
name TEXT NOT NULL,
key TEXT NOT NULL,
description TEXT,
can_use BOOLEAN NOT NULL DEFAULT TRUE,
created_at BIGINT NOT NULL DEFAULT (extract(epoch from now()) * 1000),
updated_at BIGINT NOT NULL DEFAULT (extract(epoch from now()) * 1000),
PRIMARY KEY (id),
CONSTRAINT fk_resources_parent_id
FOREIGN KEY(parent_id)
REFERENCES resources(id)
);
CREATE UNIQUE INDEX uidx_resources_key ON resources (key);
CREATE INDEX idx_resources_parent_id ON resources (parent_id);
-- trigger (updated_at)
CREATE TRIGGER tg_resources_updated_at
BEFORE UPDATE
ON resources
FOR EACH ROW
EXECUTE PROCEDURE update_updated_at_column();