MySQL VARCHAR 길이: 바이트와 문자의 혼동 탐색
MySQL 내에서 VARCHAR(n) 열 길이의 해석은 데이터베이스 버전에서. 4.1 이전 버전에서는 열 길이가 바이트 단위로 정의되었습니다. 그러나 MySQL 5 이상에서는 길이가 문자 단위로 해석됩니다.
바이트 수: MySQL 버전 4
MySQL 버전 4에서는 VARCHAR(32) 열 32바이트의 데이터를 수용할 수 있습니다. 따라서 이 필드에 멀티바이트 문자를 저장하는 것은 특정 문자 인코딩에 따라 달라지며 문자당 더 많은 바이트가 필요할 수 있습니다.
문자 수: MySQL 버전 5 이상
MySQL 버전 4 이후에는 열 길이가 문자 수에 따라 결정됩니다. UTF-8의 VARCHAR(32) 열은 32자를 허용합니다. 이 경우 멀티바이트 UTF-8 문자는 여전히 여러 바이트를 차지하지만 열 길이 계산에서는 바이트가 아닌 문자 수를 고려합니다.
MySQL 설명서 확인
더 자세히 설명하기 위해 공식 MySQL 5 문서에는 다음과 같이 명시되어 있습니다. "MySQL은 문자 열 정의의 길이 사양을 문자 단위로 해석합니다... 이는 CHAR, VARCHAR 및 TEXT에 적용됩니다. type."
UTF-8이 VARCHAR 최대 길이에 미치는 영향
흥미롭게도 VARCHAR 열의 최대 길이는 문자 집합의 영향을 받습니다. 예를 들어, MySQL 5.0.3 이상에서는 utf8 문자에 문자당 최대 3바이트가 필요할 수 있습니다. 따라서 UTF-8을 사용하는 VARCHAR 열의 최대 선언 길이는 21,844자(65,535바이트/문자당 3바이트)입니다.
위 내용은 MySQL 4와 5 사이에서 VARCHAR 길이는 어떻게 변경됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!