我創建了一個SQL Server 2012存儲過程,它調用一個函數,該函數返回一個JSON對象並將其存儲在名爲@stormOutages
的聲明變量中。SQL Server 2012 - 如何將JSON對象映射到表
我想能夠將JSON對象映射到數據庫中的3個表。有沒有一個內置函數可以幫助我做到這一點,還是我必須手動解析JSON對象?
向下滾動以查看SP和JSON對象。
存儲過程是這樣的:
CREATE PROCEDURE dbo.InsertStormOutages
[email protected] NVARCHAR(MAX),
[email protected] NVARCHAR(100)
AS
BEGIN
DECLARE @stormOutages NVARCHAR(MAX)
SET NOCOUNT ON;
SELECT
@stormOutages = dbo.GetStormOutages('https://dummywebservice.com/values')
SELECT
@stormOutages AS ReturnedJSON
END
JSON:
{ 「LASTUPDATED」: 「2015年8月26日05:00 PM」, 「縣」:{「阿拉楚阿「:{」 名稱 「:」 的Alachua」, 「numberofoutages」:222, 「numberofrestored」:222, 「numberofaffected」:222, 「NUMBEROFACCOUNTS」:1300}}, 「全州」:{ 「名稱」: 「全州」, 「numberofoutages」:1340237,「numberofrestored」:388972,「number offfected」:1728987,「numberofaccounts」:4760460}}
SQL Server 2012對JSON沒有任何本機支持 - 即將到來的SQL Server ** 2016 **將具有對關係數據創建JSON以及將JSON解析爲關係件的本機JSON支持 –
@marc_s I我能夠在實際發送到存儲過程之前操縱JSON對象。你認爲我可以把它放在XML格式,然後以這種方式映射嗎? – jorgeAChacon