-- Notifications table CREATE TABLE IF NOT EXISTS `notifications` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `created_at` datetime(3) DEFAULT NULL, `updated_at` datetime(3) DEFAULT NULL, `deleted_at` datetime(3) DEFAULT NULL, `user_id` bigint(20) unsigned NOT NULL, `title` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL, `content` text COLLATE utf8mb4_unicode_ci NOT NULL, `type` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'system', `is_read` tinyint(1) DEFAULT '0', `link` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL, `read_at` datetime(3) DEFAULT NULL, `related_id` bigint(20) unsigned DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_notifications_deleted_at` (`deleted_at`), KEY `idx_notifications_user_id` (`user_id`), KEY `idx_notifications_type` (`type`), KEY `idx_notifications_is_read` (`is_read`), KEY `idx_notifications_related_id` (`related_id`), CONSTRAINT `fk_users_notifications` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;