계속하시려면 광고 차단 기능을 해지 해주세요.

상세 컨텐츠

본문 제목

ERROR 1170: BLOB/TEXT column '00' used in key specification without a key length

IT/SQL

by 조대리 2022. 2. 14. 22:20

본문

반응형

ERROR 1170: BLOB/TEXT column '00' used in key specification without a key length

기본키로 blob/text를 사용하게 되면 나타나는 오류 코드이다.

 

간단한 설명

blob는 사진 파일에 대한 속성, text는 글을 저장해두는 속성이다.

blob와 text를 설정 할 수 없는 이유는, 둘 다 특정한 키 길이가 없다는 것이다. 키 길이가 정해져 있지 않으면 기본키(Primary Key)로 설정할 수 없다.

BLOB와 TEXT는 2의 16제곱 바이트(Byte)가량을 담을 수 있다.

(=65,536바이트, 한글의 경우 1글자에 2바이트를 사용한다.)

해결 방법

MYSQL Workbench에 들어가 설정하고자 하는 테이블을 선택 후, 스패너 모양을 눌러서 테이블 설정에 들어간다.

Primary Key로 설정할 Column을 선택 한 뒤, Datatype을 VARCHAR(n)로 변경한다.

이때 괄호에 숫자를 입력할 수 있는데, MySQL4.1 이후부터는 varchar(n)의 n 값이 글자수를 나타낸다.

주식 종목코드는 A000000로 구성되어 있어 총 7자리이다. 추가적으로 자리수가 늘어날 일이 없기 때문에 'VARCHAR(7)'으로 설정해주었다. 변경한 뒤 기본키(Primary Key) 설정을 진행하면 오류가 없을 것이다.

 

반응형

댓글 영역