簡體   English   中英

將 json 文件存儲在 MS SQL 中

[英]Store json file in MS SQL

我有一個 JSON 文件,如何在 MS SQL 中存儲 JSON 文件? 並在將文件數據存儲到數據庫后讀取文件數據?

我正在使用 python 腳本與 SQL 服務器進行交互。

注意:我不想將鍵值對作為單獨的記錄存儲在 DB 中,我想使用 python 將整個文件存儲在 DB 中。

SQL 服務器中的 JSON 沒有特定的數據類型,不像xml數據類型為 Z0F63A70E0F32ZE674。

但是,如果您要在 SQL 服務器中存儲 JSON 數據,那么您將需要使用nvarchar(MAX) 如果您在 SQL Server 2016+ 上,我還建議在列中添加CHECK CONSTRAINT以確保 JSON 有效,否則將無法解析它(在 SQL 中)。 您可以使用ISJSON 例如,如果您要將列添加到現有表中:

ALTER TABLE dbo.YourTable ADD YourJSON nvarchar(MAX) NULL;
GO
ALTER TABLE dbo.YourTable ADD CONSTRAINT chk_YourTable_ValidJSON CHECK (ISJSON(YourJSON) = 1 OR YourJSON IS NULL);

SQL 服務器為此具有 JSON 數據類型。 這是錯誤的。

如果您的版本沒有,您可以將其存儲為帶有 VARCHAR或 TEXT的字符串。

本文認為NVARCHAR(max)是大於 8KB 的文檔的答案,對於在此范圍內的文檔,您可以使用NVARCHAR(4000)顯然具有更好的性能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM