46 lines
1.4 KiB
SQL
46 lines
1.4 KiB
SQL
-- Migration: Add custom_commands tables
|
|
-- Date: 2025-10-02
|
|
-- Description: Creates tables for Discord bot custom command functionality
|
|
|
|
-- Create custom_command_creators table
|
|
CREATE TABLE IF NOT EXISTS custom_command_creators (
|
|
id SERIAL PRIMARY KEY,
|
|
discord_id BIGINT UNIQUE NOT NULL,
|
|
username VARCHAR(32) NOT NULL,
|
|
display_name VARCHAR(32),
|
|
created_at TIMESTAMP NOT NULL,
|
|
total_commands INTEGER DEFAULT 0,
|
|
active_commands INTEGER DEFAULT 0
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_custom_command_creators_discord_id
|
|
ON custom_command_creators(discord_id);
|
|
|
|
-- Create custom_commands table
|
|
CREATE TABLE IF NOT EXISTS custom_commands (
|
|
id SERIAL PRIMARY KEY,
|
|
name VARCHAR(32) UNIQUE NOT NULL,
|
|
content TEXT NOT NULL,
|
|
creator_id INTEGER NOT NULL,
|
|
created_at TIMESTAMP NOT NULL,
|
|
updated_at TIMESTAMP,
|
|
last_used TIMESTAMP,
|
|
use_count INTEGER DEFAULT 0,
|
|
warning_sent BOOLEAN DEFAULT FALSE,
|
|
is_active BOOLEAN DEFAULT TRUE,
|
|
tags TEXT,
|
|
FOREIGN KEY (creator_id) REFERENCES custom_command_creators (id)
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_custom_commands_name
|
|
ON custom_commands(name);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_custom_commands_creator_id
|
|
ON custom_commands(creator_id);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_custom_commands_is_active
|
|
ON custom_commands(is_active);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_custom_commands_last_used
|
|
ON custom_commands(last_used);
|