/** * 检查实际数据 * @file check-actual-data.js * @description 检查数据库中项圈22012000107的实际数据 */ const { sequelize } = require('./config/database-simple'); async function checkActualData() { console.log('🔍 检查数据库中项圈22012000107的实际数据...\n'); try { // 1. 测试数据库连接 console.log('1. 测试数据库连接...'); await sequelize.authenticate(); console.log('✅ 数据库连接成功'); // 2. 查询项圈22012000107的数据 console.log('\n2. 查询项圈22012000107的数据...'); const [results] = await sequelize.query(` SELECT id, sn, deviceId, battery, temperature, state, uptime, longitude, latitude, gps_state, rsrp, bandge_status, is_connect, steps, y_steps FROM iot_xq_client WHERE sn = '22012000107' ORDER BY uptime DESC `); console.log(`找到 ${results.length} 条记录`); results.forEach((row, index) => { console.log(`\n记录${index + 1}:`); console.log('ID:', row.id); console.log('SN:', row.sn); console.log('设备ID:', row.deviceId); console.log('电量:', row.battery, '(类型:', typeof row.battery, ')'); console.log('温度:', row.temperature, '(类型:', typeof row.temperature, ')'); console.log('状态:', row.state); console.log('经度:', row.longitude); console.log('纬度:', row.latitude); console.log('GPS状态:', row.gps_state); console.log('RSRP:', row.rsrp); console.log('佩戴状态:', row.bandge_status); console.log('连接状态:', row.is_connect); console.log('步数:', row.steps); console.log('昨日步数:', row.y_steps); console.log('更新时间:', row.uptime); }); // 3. 查询所有项圈的最新数据 console.log('\n3. 查询所有项圈的最新数据...'); const [allResults] = await sequelize.query(` SELECT id, sn, deviceId, battery, temperature, state, uptime FROM iot_xq_client ORDER BY uptime DESC LIMIT 10 `); console.log('所有项圈的最新数据:'); allResults.forEach((row, index) => { console.log(`${index + 1}. SN: ${row.sn}, 电量: ${row.battery}, 温度: ${row.temperature}, 状态: ${row.state}`); }); // 4. 检查数据库配置 console.log('\n4. 检查数据库配置...'); const config = sequelize.config; console.log('数据库配置:'); console.log('主机:', config.host); console.log('端口:', config.port); console.log('数据库名:', config.database); console.log('用户名:', config.username); // 5. 检查当前数据库 console.log('\n5. 检查当前数据库...'); const [currentDb] = await sequelize.query('SELECT DATABASE() as current_db'); console.log('当前数据库:', currentDb[0].current_db); // 6. 检查是否有其他数据库 console.log('\n6. 检查所有数据库...'); const [databases] = await sequelize.query('SHOW DATABASES'); console.log('所有数据库:'); databases.forEach(db => { const dbName = Object.values(db)[0]; console.log('-', dbName); }); } catch (error) { console.error('❌ 检查失败:', error.message); console.error('错误详情:', error); } finally { process.exit(0); } } // 运行检查 checkActualData().catch(console.error);