MySQL ERROR 1118 (42000): Row size too large. The maximum row size for the used table type,
페이지 정보
본문
MySQL 은 하나의 테이블에 최대 4,096 개의 컬럼을 가질 수 있으며 row 사이즈는 65,535 bytes 로 제한되어 있습니다.
큰 varchar 필드가 많은 테이블의 경우 row 사이즈 제한때문에 다음과 같은 SQL 은 에러가 나고 제대로 실행이 안 됩니다.
#1118 - Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535.
This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535.
This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
해결 방법
1. 위 에러 메시지에 나온 것처럼 varchar 컬럼 대신 BLOB 나 TEXT 필드를 사용하는 것입니다.
BLOB, TEXT 필드는 테이블과 분리되어 저장되므로 65,535 bytes 의 제한에 걸리지 않습니다.
2. 기존 생성된 컬럼 중 varchar 값을 줄여서 여유를 만듭니다
예를 들면 varchar(255) 를 varchar(50) 으로 줄인다거나, 물론 해당 컬럼의 저장되는 데이타의 길이를 고려해서 변경합니다
참고자료
https://www.lesstif.com/dbms/mysql-error-1118-42000-row-size-too-large-80249028.html
큰 varchar 필드가 많은 테이블의 경우 row 사이즈 제한때문에 다음과 같은 SQL 은 에러가 나고 제대로 실행이 안 됩니다.
#1118 - Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535.
This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535.
This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
해결 방법
1. 위 에러 메시지에 나온 것처럼 varchar 컬럼 대신 BLOB 나 TEXT 필드를 사용하는 것입니다.
BLOB, TEXT 필드는 테이블과 분리되어 저장되므로 65,535 bytes 의 제한에 걸리지 않습니다.
2. 기존 생성된 컬럼 중 varchar 값을 줄여서 여유를 만듭니다
예를 들면 varchar(255) 를 varchar(50) 으로 줄인다거나, 물론 해당 컬럼의 저장되는 데이타의 길이를 고려해서 변경합니다
참고자료
https://www.lesstif.com/dbms/mysql-error-1118-42000-row-size-too-large-80249028.html
댓글목록
등록된 댓글이 없습니다.