-- ===================================================== -- 修复"我的记录"不显示数据问题 -- ===================================================== -- 1. 首先检查当前用户的数据 -- 从截图看用户ID显示为 24187196,但这可能是显示ID,实际数据库ID可能不同 -- 先查询用户表确认 -- 查看所有用户 SELECT id, uid, nickname, phone FROM eb_user ORDER BY id DESC LIMIT 20; -- 2. 检查 eb_view_history 表是否存在 SHOW TABLES LIKE 'eb_view_history'; -- 3. 检查表结构 DESC eb_view_history; -- 4. 查看现有的观看历史数据 SELECT * FROM eb_view_history ORDER BY id DESC LIMIT 20; -- 5. 查看直播间列表(用于添加测试数据) SELECT id, title, streamer_id, is_live FROM eb_live_room LIMIT 10; -- ===================================================== -- 为用户添加测试观看历史数据 -- 请根据实际用户ID修改 @USER_ID 的值 -- ===================================================== -- 设置用户ID(请根据实际情况修改) -- 如果用户昵称是"道玄",先查询其真实ID SELECT id, uid, nickname FROM eb_user WHERE nickname LIKE '%道玄%' OR uid = 24187196; -- 假设用户ID是121(道玄),添加观看历史 SET @USER_ID = 121; -- 先删除旧数据(可选) -- DELETE FROM eb_view_history WHERE user_id = @USER_ID; -- 插入观看历史测试数据 INSERT INTO eb_view_history (user_id, target_type, target_id, target_title, view_duration, create_time, update_time) VALUES (@USER_ID, 'room', '1', '欢乐游戏直播', 1800, NOW() - INTERVAL 1 HOUR, NOW() - INTERVAL 1 HOUR), (@USER_ID, 'room', '2', '音乐分享会', 2400, NOW() - INTERVAL 2 HOUR, NOW() - INTERVAL 2 HOUR), (@USER_ID, 'room', '3', '户外探险', 1200, NOW() - INTERVAL 3 HOUR, NOW() - INTERVAL 3 HOUR), (@USER_ID, 'room', '8', '火影忍者', 3600, NOW() - INTERVAL 30 MINUTE, NOW() - INTERVAL 30 MINUTE) ON DUPLICATE KEY UPDATE target_title = VALUES(target_title), view_duration = view_duration + VALUES(view_duration), update_time = NOW(); -- 验证插入结果 SELECT * FROM eb_view_history WHERE user_id = @USER_ID ORDER BY update_time DESC; -- ===================================================== -- 同时检查点赞记录表 -- ===================================================== -- 检查直播间点赞表 SELECT * FROM eb_live_room_like WHERE user_id = @USER_ID; -- 检查作品点赞表(如果存在) SELECT * FROM eb_work_like WHERE user_id = @USER_ID; -- 检查关注记录 SELECT * FROM eb_follow_record WHERE follower_id = @USER_ID; -- ===================================================== -- 如果表不存在,创建它 -- ===================================================== CREATE TABLE IF NOT EXISTS `eb_view_history` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `user_id` int(11) NOT NULL COMMENT '用户ID', `target_type` varchar(20) NOT NULL COMMENT '目标类型:room-直播间, work-作品, profile-用户主页', `target_id` varchar(50) NOT NULL COMMENT '目标ID', `target_title` varchar(255) DEFAULT NULL COMMENT '目标标题', `view_duration` int(11) DEFAULT 0 COMMENT '观看时长(秒)', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '查看时间', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`), KEY `idx_user_id` (`user_id`), KEY `idx_target` (`target_type`, `target_id`), KEY `idx_create_time` (`create_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='查看历史记录表';