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

如何修复SQL错误:JSON文本格式不正确,位置1出现意外字符'.'

问题原因及解决方案

错误根源

声明NVARCHAR类型变量时未指定长度,SQL Server中NVARCHAR默认长度为1,导致JSON字符串被截断为单个字符,OPENJSON解析时自然识别为格式错误的JSON。

解决步骤

  • 为NVARCHAR变量指定足够的长度,推荐使用NVARCHAR(MAX)(适用于任意长度的JSON),或根据实际JSON长度指定具体数值(如NVARCHAR(200))。

修正后的代码

DECLARE @Json NVARCHAR(MAX) = '{"collection":[{"Type":"example_type","Value":"example_data"}]}';
SELECT * FROM OPENJSON(@Json) AS Options;

补充说明

SQL Server中,未指定长度的NVARCHAR会被默认设置为长度1,仅能存储单个字符。只有指定足够长度后,变量才能完整保存JSON字符串,OPENJSON才能正常解析结构。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 10:10:57