lrj
21 小时以前 9f8395fab13ca4b230a0f7d62636e209745c91d4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
const mysql = require('mysql2/promise');
 
async function checkActivityDates() {
    let connection;
    
    try {
        // 创建数据库连接
        connection = await mysql.createConnection({
            host: '139.155.104.10',
            port: 3306,
            user: 'ryc',
            password: 'KiYap3E8X8RLcM6T',
            database: 'ryc',
            connectTimeout: 60000,
            acquireTimeout: 60000,
            timeout: 60000
        });
 
        console.log('数据库连接成功!');
 
        // 查询活动数据
        const [rows] = await connection.execute(`
            SELECT 
                id,
                name,
                signup_deadline,
                match_time,
                address,
                player_max,
                state,
                create_time,
                update_time
            FROM t_activity 
            WHERE state = 1 
            ORDER BY id DESC 
            LIMIT 10
        `);
 
        console.log('\n=== 活动数据检查 ===');
        console.log(`找到 ${rows.length} 条活动记录:\n`);
 
        rows.forEach((row, index) => {
            console.log(`${index + 1}. 活动ID: ${row.id}`);
            console.log(`   名称: ${row.name}`);
            console.log(`   报名截止时间: ${row.signup_deadline || '未设置'}`);
            console.log(`   比赛时间: ${row.match_time || '未设置'}`);
            console.log(`   地址: ${row.address || '未设置'}`);
            console.log(`   最大人数: ${row.player_max || '未限制'}`);
            console.log(`   状态: ${row.state}`);
            console.log(`   创建时间: ${row.create_time}`);
            console.log(`   更新时间: ${row.update_time}`);
            console.log('   ---');
        });
 
        // 统计时间字段为空的记录
        const [emptyDates] = await connection.execute(`
            SELECT 
                COUNT(*) as total,
                SUM(CASE WHEN signup_deadline IS NULL THEN 1 ELSE 0 END) as empty_signup_deadline,
                SUM(CASE WHEN match_time IS NULL THEN 1 ELSE 0 END) as empty_match_time
            FROM t_activity 
            WHERE state = 1
        `);
 
        console.log('\n=== 时间字段统计 ===');
        console.log(`总活动数: ${emptyDates[0].total}`);
        console.log(`报名截止时间为空: ${emptyDates[0].empty_signup_deadline}`);
        console.log(`比赛时间为空: ${emptyDates[0].empty_match_time}`);
 
        // 检查最近的活动详情
        const [latestActivity] = await connection.execute(`
            SELECT * FROM t_activity WHERE state = 1 ORDER BY id DESC LIMIT 1
        `);
 
        if (latestActivity.length > 0) {
            console.log('\n=== 最新活动详情 ===');
            const activity = latestActivity[0];
            console.log('完整活动信息:');
            console.log(JSON.stringify(activity, null, 2));
        }
 
    } catch (error) {
        console.error('数据库查询失败:', error.message);
        console.error('错误详情:', error);
    } finally {
        if (connection) {
            await connection.end();
            console.log('\n数据库连接已关闭');
        }
    }
}
 
// 运行查询
checkActivityDates();