You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GET接口返回null:TypeScript查询isCore=true成员的语法是否正确?

问题排查:GET接口返回null但数据库有符合条件的记录

你的Sequelize查询语法本身是正确的,where: { isCore: true } 能够正确筛选出isCore字段为true的记录。接口返回null大概率是其他环节出了问题,给你几个排查方向:

  • 字段名/大小写不匹配:检查数据库表中的实际字段名是否为isCore。像PostgreSQL这类区分大小写的数据库,如果表字段是iscore或IsCore,而模型里定义的是isCore,就会查不到数据;MySQL默认不区分,但也建议保持模型和数据库字段名一致。
  • 模型字段类型错误:确认Member模型中isCore字段的类型是BOOLEAN。如果模型定义成了STRING,而数据库里存的是布尔值true,类型不匹配会导致查询无结果。
  • 数据库连接错误:检查服务是否连接到了正确的数据库实例,别不小心连到测试库或者其他环境的空库了。
  • 直接验证SQL语句:在数据库客户端执行原生SQL:SELECT * FROM members WHERE isCore = true;(注意表名是否和模型对应,Sequelize默认会把模型名转成复数作为表名,比如Member对应members),看是否能查到数据。
  • 开启SQL日志调试:在查询里临时添加logging配置,查看Sequelize实际生成的SQL语句,确认和预期一致:
router.get('/coreMem', async(req, res)=>{
  try {
    const core_member_details = await Member.findAll({
      where:{
        isCore: true
      },
      logging: console.log // 打印执行的SQL
    })
    
    console.log('查询结果:', core_member_details); // 控制台确认查询结果是否真为空
    res.status(200).json(core_member_details);
    
  } catch (err) {
    logger.error(`${err}`);
    res.status(500).send('Internal Server/Database Error!');
  }
});

内容的提问来源于stack exchange,提问作者aditya garg

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 06:05:50