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

SQL中ISJSON对JSON.stringify生成内容返回false的原因排查

排查前端JSON.stringify生成内容被SQL ISJSON判定为非JSON的原因

以下是几个常见的原因及解决办法:

  • 外层多余的单引号导致识别失败
    你提供的内容被单引号包裹:'[{"value":"TB12","label":"Tom Brady"},{"value":"TW95","label":"Tiger Woods"},{"value":"PM10","label":"Peyton Manning"}]',SQL的ISJSON会将整个带单引号的内容视为普通字符串,而非JSON结构。
    解决:前端传递时去掉外层单引号,直接传递纯JSON内容:[{"value":"TB12","label":"Tom Brady"},{"value":"TW95","label":"Tiger Woods"},{"value":"PM10","label":"Peyton Manning"}]。

  • 存在隐藏字符或转义错误
    若前端传递过程中引入了全角空格、控制字符等不可见内容,或者双引号被错误转义,也会导致ISJSON判定失败。
    解决:

    • 前端用console.log输出JSON.stringify的结果,确认内容无异常转义或隐藏字符;
    • SQL中可先通过TRIM函数清理首尾不可见字符,再校验:SELECT ISJSON(TRIM(your_json_string)) FROM your_table;
  • SQL Server版本不兼容
    ISJSON函数仅在SQL Server 2016及以上版本支持,若使用更早版本,会直接返回0。
    解决:确认SQL Server版本,升级至支持JSON功能的版本,或改用自定义JSON校验逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 06:35:28