【发布时间】:2017-08-11 22:08:46
【问题描述】:
我使用此查询将数据转换为 JSON
SELECT *FROM tbl_subject FOR JSON AUTO
当我点击响应时,它作为 XML 文件打开
如何将此 xml 更改为 nvarchar 数据类型
【问题讨论】:
标签: json sql-server-2016
我使用此查询将数据转换为 JSON
SELECT *FROM tbl_subject FOR JSON AUTO
当我点击响应时,它作为 XML 文件打开
如何将此 xml 更改为 nvarchar 数据类型
【问题讨论】:
标签: json sql-server-2016
首先,在 SQL Server 中,JSON 本身并不是一种数据类型(XML 是),而只是一种字符串表示形式。
您看到的是由于 SQL Server Management Studio 在作为结果集返回时如何处理 JSON。它不是 xml,SSMS 只是拍打.xml 文件类型,并美化结果。如果您要更改返回结果的方式(工具|选项|查询结果|SQL Server|常规),您会看到如下所示:
JSON_F52E2B61-18A1-11d1-B105-00805F49916B
----------------------------------------------------------
[{"RowID":1,"UniversityID":1,"AcademicID":4,"CourseID":1}]
但这正是 SSMS 返回结果的方式。如果您要从应用程序执行语句,结果将是字符串数据类型。
您还可以将执行查询的方式更改为:
DECLARE @nres nvarchar(max) = (SELECT * FROM dbo.tb_Subject FOR JSON AUTO)
SELECT @nres
希望这会有所帮助!
【讨论】: