CREATE TABLE IF NOT EXISTS `user_badges` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `userId` UUID NOT NULL, `badgeId` INT UNSIGNED NOT NULL, `unlockedAt` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id), UNIQUE KEY uq_user_badges_user_badge (userId, badgeId), INDEX idx_user_badges_user (userId), CONSTRAINT `fk_user_badges_userId` FOREIGN KEY (`userId`) REFERENCES `users` (`id`) ON DELETE CASCADE, CONSTRAINT `fk_user_badges_badgeId` FOREIGN KEY (`badgeId`) REFERENCES `badges` (`id`) ON DELETE CASCADE );