char, varchar, nchar, nvarchar 및 텍스트의 차이점은 무엇입니까?

一个新手
풀어 주다: 2017-10-18 10:00:06
원래의
1515명이 탐색했습니다.

char, varchar, nchar, nvarchar와 text의 차이점

1 var 접두어가 붙는 것은 실제 저장 공간이 가변 길이, varchar, nvarchar

일명 고정형이라는 뜻입니다. 길이는 길이로 고정되어 있으며, 입력된 데이터의 길이가 지정된 길이에 도달하지 못할 경우 해당 길이에 도달하도록 자동으로 공백을 채워서 입력한 문자가 보다 클 때 적용됩니다. 텍스트도 가변 길이로 저장된다는 점은 예외입니다.

2.n은 유니코드 문자를 나타냅니다. 즉, 모든 문자는 2바이트, nchar, nvarchar,

문자를 차지하며, 영어 문자는 1바이트만 저장하면 충분하지만 한자도 많습니다. 저장하는 데 2바이트가 필요하며, 영어와 한자가 동시에 존재할 경우 혼동을 일으키기 쉽습니다. 유니코드 문자 집합은 문자 집합의 비호환 문제를 해결하기 위해 만들어졌습니다.모든 문자는 2바이트로 표현됩니다. 즉, 영어 문자도 2바이트로 표현됩니다

3. 위의 두 가지 점을 바탕으로 필드 용량을 살펴보겠습니다

char(n), varchar(n)up 영어 8000자, 중국어 4000자 n은 입력 데이터의 실제 바이트 길이를 나타냅니다. nchar(n), nvarchar(n)은 영어나 중국어에 관계없이 4000자를 저장할 수 있습니다. n 문자 수를 나타냅니다

4. 사용(개인 취향)

a. 데이터 양이 매우 클 경우 길이를 100% 판별하여 ANSI 문자만 저장한 다음 char

b. 결정되었지만 반드시 ANSI 문자일 필요는 없습니다. 또는 nchar를 사용합니다.

c. 기사 내용과 같은 매우 큰 데이터의 경우 nText를 사용합니다.

d. 기타 일반 nvarchar

1. CHAR. CHAR은 고정 길이 데이터를 저장하는 데 매우 편리합니다.

CHAR 필드의 인덱싱 효율성이 높습니다 예를 들어, char(10)을 정의하면 저장하는 데이터가 도달하는지 여부에 관계 없습니다. 10바이트이면 10바이트의 공간을 차지합니다. 2, VARCHAR. 가변 길이 데이터를 저장하지만(

) 저장 효율성은 CHAR만큼 높지 않습니다. 필드의 가능한 값이 고정 길이가 아닌 경우 10자를 초과할 수 없다는 것만 알 수 있습니다. , VARCHAR(10)으로 정의하는 것이 가장 비용 효율적입니다. VARCHAR 유형의 실제 길이는 해당 값의 실제 길이 + 1입니다. 왜 "+1"인가요? 이 바이트는 사용된 실제 길이를 저장하는 데 사용됩니다. 공간 관점에서는 varchar가 적합하고, 효율성 관점에서는 char이 적합합니다. 실제 상황에 따라 절충점을 찾는 것이 핵심입니다.

3. text는 유니코드가 아닌 가변 길이 데이터를 저장하며 최대 길이는 2^31-1(2,147,483,647)자입니다.

4, NCHAR, NVARCHAR, NTEXT. 이 세 가지 유형에는 이전 세 가지 유형보다 이름에 "N"이 추가로 포함되어 있습니다. char 및 varchar와 비교하여 nchar 및 nvarchar는 영어 또는 중국어 문자에 관계없이 최대 4000자를 저장할 수 있으며 char 및 varchar는 최대 8000자의 영어 문자와 4000자의 중국어 문자를 저장할 수 있습니다. nchar 및 nvarchar 데이터 형식을 사용할 때 입력 문자가 영어인지 중국어인지 걱정할 필요가 없어 더 편리하다는 것을 알 수 있지만 영어를 저장할 때 양이 약간 손실됩니다.

그래서 일반적으로 한자가 포함되어 있으면 nchar/nvarchar를 사용하고, 순수 영어와 숫자가 포함되어 있으면 char/varchar를 사용합니다.

위 내용은 char, varchar, nchar, nvarchar 및 텍스트의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!