zhibo/create_tables_and_data_121.sql

160 lines
7.3 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- =====================================================
-- 为用户"道玄"ID: 121创建缺失的表并添加测试数据
-- =====================================================
-- =====================================================
-- 1. 创建观看历史表 (eb_watch_history)
-- =====================================================
CREATE TABLE IF NOT EXISTS `eb_watch_history` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`uid` int(11) NOT NULL COMMENT '用户ID',
`target_type` varchar(20) NOT NULL COMMENT '目标类型room-直播间, work-作品',
`target_id` varchar(50) NOT NULL COMMENT '目标ID',
`target_title` varchar(200) DEFAULT NULL COMMENT '目标标题',
`target_cover` varchar(500) DEFAULT NULL COMMENT '目标封面',
`duration` int(11) DEFAULT 0 COMMENT '观看时长(秒)',
`watch_time` datetime DEFAULT NULL COMMENT '观看时间',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
KEY `idx_uid` (`uid`),
KEY `idx_target` (`target_type`, `target_id`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='观看历史表';
-- =====================================================
-- 2. 插入观看历史数据
-- =====================================================
INSERT INTO eb_watch_history (uid, target_type, target_id, target_title, target_cover, duration, watch_time, create_time) VALUES
(121, 'room', '1', '欢乐游戏直播', 'https://example.com/cover1.jpg', 1800, '2026-01-03 20:30:00', '2026-01-03 20:30:00'),
(121, 'room', '2', '音乐分享会', 'https://example.com/cover2.jpg', 2400, '2026-01-03 21:00:00', '2026-01-03 21:00:00'),
(121, 'room', '3', '户外探险直播', 'https://example.com/cover3.jpg', 900, '2026-01-02 19:00:00', '2026-01-02 19:00:00'),
(121, 'room', '4', '美食制作教程', 'https://example.com/cover4.jpg', 3600, '2026-01-02 12:00:00', '2026-01-02 12:00:00'),
(121, 'room', '5', '编程技术分享', 'https://example.com/cover5.jpg', 5400, '2026-01-01 14:00:00', '2026-01-01 14:00:00'),
(121, 'work', '1', '搞笑短视频合集', 'https://example.com/work1.jpg', 180, '2026-01-03 22:00:00', '2026-01-03 22:00:00'),
(121, 'work', '2', '旅行Vlog-云南之旅', 'https://example.com/work2.jpg', 600, '2026-01-03 18:00:00', '2026-01-03 18:00:00'),
(121, 'work', '3', '美妆教程分享', 'https://example.com/work3.jpg', 420, '2026-01-02 16:00:00', '2026-01-02 16:00:00');
-- =====================================================
-- 3. 检查并创建直播间点赞表
-- =====================================================
CREATE TABLE IF NOT EXISTS `eb_live_room_like` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL COMMENT '用户ID',
`room_id` int(11) NOT NULL COMMENT '直播间ID',
`like_count` int(11) DEFAULT 1 COMMENT '点赞次数',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_uid_room` (`uid`, `room_id`),
KEY `idx_room_id` (`room_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='直播间点赞表';
-- 插入直播间点赞数据
INSERT IGNORE INTO eb_live_room_like (uid, room_id, like_count, create_time) VALUES
(121, 1, 15, '2026-01-03 20:35:00'),
(121, 2, 28, '2026-01-03 21:15:00'),
(121, 3, 8, '2026-01-02 19:10:00'),
(121, 4, 42, '2026-01-02 12:30:00'),
(121, 5, 20, '2026-01-01 14:30:00');
-- =====================================================
-- 4. 插入作品关系数据(点赞和收藏)
-- =====================================================
-- 点赞作品 (type=1 或 type='like')
INSERT IGNORE INTO eb_works_relation (uid, works_id, type, create_time) VALUES
(121, 1, 1, '2026-01-03 22:05:00'),
(121, 2, 1, '2026-01-03 18:10:00'),
(121, 3, 1, '2026-01-02 16:15:00'),
(121, 4, 1, '2026-01-01 20:00:00'),
(121, 5, 1, '2026-01-01 15:00:00');
-- 收藏作品 (type=2 或 type='collect')
INSERT IGNORE INTO eb_works_relation (uid, works_id, type, create_time) VALUES
(121, 1, 2, '2026-01-03 22:06:00'),
(121, 2, 2, '2026-01-03 18:12:00'),
(121, 6, 2, '2026-01-02 10:00:00'),
(121, 7, 2, '2026-01-01 11:00:00');
-- =====================================================
-- 5. 插入关注记录
-- =====================================================
INSERT IGNORE INTO eb_follow_record (uid, follow_uid, create_time) VALUES
(121, 100, '2026-01-03 20:00:00'),
(121, 101, '2026-01-03 15:00:00'),
(121, 102, '2026-01-02 18:00:00'),
(121, 103, '2026-01-02 12:00:00'),
(121, 104, '2026-01-01 20:00:00'),
(121, 105, '2026-01-01 10:00:00');
-- 被关注记录
INSERT IGNORE INTO eb_follow_record (uid, follow_uid, create_time) VALUES
(100, 121, '2026-01-03 21:00:00'),
(101, 121, '2026-01-03 16:00:00'),
(106, 121, '2026-01-02 20:00:00'),
(107, 121, '2026-01-02 14:00:00');
-- =====================================================
-- 6. 插入搜索历史
-- =====================================================
INSERT IGNORE INTO eb_search_history (uid, keyword, search_type, search_count, create_time) VALUES
(121, '游戏直播', 1, 3, '2026-01-03 20:00:00'),
(121, '音乐', 1, 2, '2026-01-03 19:00:00'),
(121, '美食教程', 2, 1, '2026-01-02 11:00:00'),
(121, '旅行Vlog', 2, 2, '2026-01-02 10:00:00'),
(121, '编程学习', 1, 4, '2026-01-01 13:00:00'),
(121, '户外运动', 1, 1, '2026-01-01 09:00:00');
-- =====================================================
-- 7. 创建并插入好友关系
-- =====================================================
CREATE TABLE IF NOT EXISTS `eb_friend` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL COMMENT '用户ID',
`friend_uid` int(11) NOT NULL COMMENT '好友用户ID',
`remark` varchar(50) DEFAULT NULL COMMENT '备注名',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_uid_friend` (`uid`, `friend_uid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='好友关系表';
INSERT IGNORE INTO eb_friend (uid, friend_uid, remark, create_time) VALUES
(121, 100, '游戏主播', '2026-01-03 21:35:00'),
(121, 101, '音乐达人', '2026-01-03 16:10:00'),
(100, 121, '道玄', '2026-01-03 21:35:00'),
(101, 121, '道玄', '2026-01-03 16:10:00');
-- =====================================================
-- 8. 更新用户余额和积分
-- =====================================================
UPDATE eb_user SET
now_money = 500.00,
integral = 1200,
experience = 350
WHERE uid = 121;
-- =====================================================
-- 9. 验证数据
-- =====================================================
SELECT '=== 用户道玄(ID:121)数据统计 ===' as ;
SELECT '观看历史' as , COUNT(*) as FROM eb_watch_history WHERE uid = 121
UNION ALL
SELECT '直播间点赞', COUNT(*) FROM eb_live_room_like WHERE uid = 121
UNION ALL
SELECT '作品点赞', COUNT(*) FROM eb_works_relation WHERE uid = 121 AND type = 1
UNION ALL
SELECT '作品收藏', COUNT(*) FROM eb_works_relation WHERE uid = 121 AND type = 2
UNION ALL
SELECT '关注数', COUNT(*) FROM eb_follow_record WHERE uid = 121
UNION ALL
SELECT '粉丝数', COUNT(*) FROM eb_follow_record WHERE follow_uid = 121
UNION ALL
SELECT '搜索历史', COUNT(*) FROM eb_search_history WHERE uid = 121
UNION ALL
SELECT '好友数', COUNT(*) FROM eb_friend WHERE uid = 121;
-- 检查用户余额
SELECT uid, nickname, now_money as , integral as , experience as
FROM eb_user WHERE uid = 121;
SELECT '数据插入完成!' as ;