LG U+ Project troubleshooting

CREATE TABLE 시 크기 문제

CodingTrader 2025. 7. 29. 17:31
728x90
CREATE TABLE progrm_aude (
    seq_no BIGINT(20) NOT NULL AUTO_INCREMENT,
	INDUTY_LCLAS_NM VARCHAR(200) NOT NULL,
	INDUTY_MLSFC_NM VARCHAR(200) NOT NULL,
    INDUTY_SCLAS_NM VARCHAR(200) NOT NULL,
    ADVRTS_BRDCST_AREA_NM VARCHAR(200) NOT NULL,
    AUDE_CO DECIMAL(10,3),
    MALE_4_9YO_AUDE_CO DECIMAL(10,3),
    MALE_N10S_AUDE_CO DECIMAL(10,3),
    MALE_N20S_AUDE_CO DECIMAL(10,3),
    MALE_N30S_AUDE_CO DECIMAL(10,3),
    MALE_N40S_AUDE_CO DECIMAL(10,3),
    MALE_N50S_AUDE_CO DECIMAL(10,3),
    MALE_N60S_ABOVE_AUDE_CO DECIMAL(10,3),
    FEMALE_4_9YO_AUDE_CO DECIMAL(10,3),
    FEMALE_N10S_AUDE_CO DECIMAL(10,3),
    FEMALE_N20S_AUDE_CO DECIMAL(10,3),
    FEMALE_N30S_AUDE_CO DECIMAL(10,3),
    FEMALE_N40S_AUDE_CO DECIMAL(10,3),
    FEMALE_N50S_AUDE_CO DECIMAL(10,3),
    FEMALE_N60S_ABOVE_AUDE_CO DECIMAL(10,3),
    PRIMARY KEY (seq_no, INDUTY_LCLAS_NM, INDUTY_MLSFC_NM, INDUTY_SCLAS_NM, ADVRTS_BRDCST_AREA_NM) USING BTREE
)
COLLATE='utf8mb4_general_ci'
ENGINE=INNODB;

에러가 발생했던 CREATE TABLE 구문

/* SQL 오류 (1071): Specified key was too long; max key length is 3072 bytes */

 

MySQL/MariaDB에서 인덱스(또는 프라이머리 키)로 사용할 수 있는 최대 길이(바이트 수)가 초과되었기 때문에 발생.

 

PK로 잡았던 INDUTY_LCLAS_NM , INDUTY_MLSFC_NM, INDUTY_SCLAS_NM, ADVRTS_BRDCST_AREA_NM 

해당 컬럼들의 크기를 VARCHAR(200) >> VARCHAR(100) 로 수정하니 문제 없이 테이블이 생성 되었다.

728x90