2014-02-28 4 views
0

인터넷에서 텍스트 레코드가 64kb와 같은 것을 읽었습니다. 내 질문은 : 레코드에 단 하나의 문자를 삽입하면 64KB 이하를 모두 차지할 것인가? 나는 내가 64kb를 전부는 필요로하지는 않을 것이라고 생각하기 때문에 이것을 묻는다. 은 사전에 감사MySQL : 텍스트가 차지하는 공간은 얼마나됩니까?

+0

용서해주세요. 문서를 붙여 넣기 만합니다. http://dev.mysql.com/doc/refman/5.1/en/storage-requirements.html –

+1

아니요, 한 문자는 몇 바이트 만 필요합니다. 공식은 다음과 같습니다. L이 텍스트의 길이 일 때 L + 2 바이트. 따라서 단행본 책자의 표준 페이지는 약 2KB의 저장 용량을 차지합니다. –

+0

문자열/텍스트가 쓰여지고 끝에 2 바이트가 더 붙습니다. 이 2 바이트는 적어 둔 글자의 길이와 최대 글자 수를 포함합니다. 2 바이트로 저장할 수있는 숫자는 2^16 = 65536이며, 여기서 64KB 제한이 발생합니다. 이것이 최적화입니다. 따라서 64KB 전체가 할당되지는 않으며 길이 (텍스트) + 2 바이트입니다. –

답변

0

네 TEXT 유형 TINYTEXT, TEXT, MEDIUMTEXT, 그리고 LONGTEXT TINYTEXT를 들어

  • 있습니다 (실제 주어진 문자열 값의 길이 (바이트)) + (1 바이트)
  • 텍스트
  • (실제, 주어진 문자열 값의 길이 (바이트)) + (2 바이트) MEDIUMTEXT 들어
  • (실제, 주어진 문자열 값의 길이 (바이트)) + (3 바이트) 0
  • LONGTEXT 들어
  • (소정 문자열 값의 실제 길이 (바이트)) + (4 바이트)

후미 공간은 저장 또는 검색을 위해 고려되지 않는다.

상세 정보 : Storage Requirements for String Types (GarciaPL 그냥 언급 :))

는 희망이 도움이!

관련 문제