[SQL] JSON 문자열을 저장하기위한 최적의 SQL 데이터 타입은 무엇입니까?
SQLJSON 문자열을 저장하기위한 최적의 SQL 데이터 타입은 무엇입니까?
JSON 문자열을 저장하기위한 최적의 SQL 데이터 타입은 무엇입니까?
static List<ProductModel> CreateProductList()
{
string json = @"[
{
ProductId: 1,
ProductCode: 'A',
Product: 'A'
},
{
ProductId: 2,
ProductCode: 'B',
Product: 'B'
}
]";
IList<JToken> tokenList = JToken.Parse(json).ToList();
List<ProductModel> productList = new List<ProductModel>();
foreach (JToken token in tokenList)
{
productList.Add(JsonConvert.DeserializeObject<ProductModel>(token.ToString()));
}
return productList;
}
우리는 이러한 문자열 JSON을 포함를 저장하는 SQL 데이터 유형을 사용해야합니까?
해결법
-
==============================
1.확실히:
확실히:
2 바이트 당 문자 유니 코드 모드에서 VARCHAR 저장 비 유니 코드 문자열 (문자 당 1 바이트) 및 NVARCHAR 저장 모든 : 그것은 기본적으로 VARCHAR (X) 또는 NVARCHAR (X)를 남긴다 그래서. 그래서 당신은 유니 코드를 필요합니까? 잠재적으로 당신의 문자열에서 아랍어, 히브리어, 중국어 또는 다른 비 서구 유럽 문자가 있습니까? 그런 다음 NVARCHAR로 이동
(N) VARCHAR 컬럼은 두 가지 종류로 제공 : 중 당신은 그 결과 8000 바이트 이하 (VARCHAR 최대 8000 자, 최대 4000 NVARCHAR), 또는이 충분하지 않습니다 경우 (N) VARCHAR를 사용 (최대 길이를 정의 데이터의 2 기가 바이트까지 저장할 MAX) 버전.
업데이트 : - (NVARCHAR을 기반으로) 새로운 JSON 데이터 형식을 JSON 형식으로 쿼리에서 변환 출력에 대한 JSON 명령뿐만 아니라, 소개합니다 SQL 서버 2016 네이티브 JSON 지원을해야합니다
업데이트 # 2 : 최종 제품에 마이크로 소프트는 별도의 JSON의 데이터 유형을 포함하지 않았다 - 대신 (JSON으로 데이터베이스 행을 패키지로, 또는 관계형 데이터로 JSON을 구문 분석)의 컬럼에서 작동하는 JSON-기능을 제공하고 있습니다 NVARCHAR (N)을 입력
-
==============================
2.나는 NVARCHAR (최대)에 갈 것이다. 즉, 요구 사항에 적합해야한다.
나는 NVARCHAR (최대)에 갈 것이다. 즉, 요구 사항에 적합해야한다.
최신 정보: SQL 서버 2016 푸른 SQL로 추가 네이티브 JSON 기능이 많이 있습니다. 이것은 긍정적 디자인이나 접근 방식에 영향을 줄 수 있습니다. https://docs.microsoft.com/en-us/sql/relational-databases/json/json-data-sql-server : 당신은 더 많은 것을 위해이 글을 읽을 수 있습니다
-
==============================
3.난 당신이 JSON은 SQL 2016 또는 푸른 SQL에 기능을 사용하려는 경우 NVARCHAR (최대)를 사용하는 것이 좋습니다.
난 당신이 JSON은 SQL 2016 또는 푸른 SQL에 기능을 사용하려는 경우 NVARCHAR (최대)를 사용하는 것이 좋습니다.
당신이 그 기능을 사용하지 않는 경우에는 COMPRESS (및 압축 해제) 기능과 결합을 varbinary (max)를 사용할 수 있습니다. 더 많은 정보 : https://blogs.msdn.microsoft.com/sqlserverstorageengine/2015/11/23/storing-json-in-sql-server/
-
==============================
4.권장 데이터 형식은 NVARCHAR이다. 참조하시기 바랍니다 https://docs.microsoft.com/en-us/sql/relational-databases/json/json-data-sql-server?view=sql-server-ver15#store-and-index-json-data-in- SQL 서버] [1]
권장 데이터 형식은 NVARCHAR이다. 참조하시기 바랍니다 https://docs.microsoft.com/en-us/sql/relational-databases/json/json-data-sql-server?view=sql-server-ver15#store-and-index-json-data-in- SQL 서버] [1]
from https://stackoverflow.com/questions/9207404/whats-best-sql-datatype-for-storing-json-string by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 고유 값을 계산 (0) | 2020.07.22 |
---|---|
[SQL] 어떻게 필드가 null 또는 빈 MySQL의 경우 확인? (0) | 2020.07.22 |
[SQL] MySQL을 SQL 서버에 해당 지금의 ()? (0) | 2020.07.22 |
[SQL] PostgreSQL의에서 '이 복사'중 중복 키를 무시하려면 (0) | 2020.07.22 |
[SQL] 대 저장 프로 시저 견해 (0) | 2020.07.22 |