CREATE DATABASE golang_template; CREATE EXTENSION IF NOT EXISTS "uuid-ossp"; -- migrations/users.sql CREATE TABLE users ( id UUID PRIMARY KEY DEFAULT uuid_generate_v4() NOT NULL, nama VARCHAR(100) NOT NULL, no_telp VARCHAR(30) NOT NULL, email VARCHAR(100) NOT NULL, password VARCHAR(100) NOT NULL, role VARCHAR(100) NOT NULL, created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(), updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW() ); -- migrations/refresh_tokens.sql CREATE TABLE refresh_tokens ( id UUID PRIMARY KEY DEFAULT uuid_generate_v4() NOT NULL, user_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE, token VARCHAR(255) NOT NULL, expires_at TIMESTAMP WITH TIME ZONE NOT NULL, created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(), updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(), deleted_at TIMESTAMP WITH TIME ZONE ); CREATE INDEX idx_refresh_tokens_user_id ON refresh_tokens(user_id); CREATE UNIQUE INDEX idx_refresh_tokens_token ON refresh_tokens(token);