CREATE TABLE enchantments ( id SERIAL PRIMARY KEY, name TEXT NOT NULL UNIQUE, min_tier SMALLINT NOT NULL, max_tier SMALLINT NOT NULL, image_url TEXT NOT NULL, CONSTRAINT enchantment_tier_range CHECK ( min_tier BETWEEN 1 AND 5 AND max_tier BETWEEN 1 AND 5 AND min_tier <= max_tier ) ); CREATE TABLE enchantment_attributes ( enchantment_id INTEGER NOT NULL REFERENCES enchantments(id) ON DELETE CASCADE, attribute primary_attribute NOT NULL, PRIMARY KEY (enchantment_id, attribute) );