在MS SQL Server 2016,已经支持JSON处理。
执行下面代码,将获取ms sql server对象类型以及其说明:


IF OBJECT_ID('tempdb.dbo.#json_type') IS NOT NULL DROP TABLE #json_typeCREATE TABLE #json_type ( [type] TINYINT,[data_type] NVARCHAR(30) ) INSERT INTO #json_type ([type],[data_type]) VALUES (0,'null'), (1,'string'), (2,'int'), (3,'true/false'), (4,'array'), (5,'object')SELECT [type],[data_type] FROM #json_type
把它写成一个自定义函数:


SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO-- ============================================= -- Author: Insus.NET -- Create date: 2019-05-23 -- Update date: 2019-05-23 -- Description: 获取存储过程参数数据 -- ============================================= CREATE OR ALTER FUNCTION [dbo].[svf_JSONDataType] (@type TINYINT ) RETURNS NVARCHAR(MAX) AS BEGINRETURN CASEWHEN @type = 0 THEN 'null'WHEN @type = 1 THEN 'string'WHEN @type = 2 THEN 'int'WHEN @type = 3 THEN 'true/false'WHEN @type = 4 THEN 'array'WHEN @type = 5 THEN 'object'END END