如何获得nvarchar的JSON输出,在SQL Server 2016
问题描述:
我用这个查询到的数据转换成JSON如何获得nvarchar的JSON输出,在SQL Server 2016
SELECT * FROM tbl_subject FOR JSON AUTO
当我点击它打开为XML文件的响应
如何改变这种XML来nvarchar数据类型
答
首先,在SQL Server中,JSON本身不是(XML是)数据类型,而只是一个字符串表示。
您看到的是由于SQL Server Management Studio如何以结果集的形式返回时处理JSON。它不是xml,SSMS只是对.xml
文件类型进行拍打,并且对结果进行了优化。如果你要改变的结果是如何返回(工具|选项|查询结果| SQL服务器|通用),你会看到它像这样的东西:
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
希望这有助于!