본문 바로가기
MySql

MySQL 텍스트 열을 고유 키로 만들기

by 베이스 공부 2021. 1. 16.
반응형

mediumtext 열을 UNIQUE KEY 로 사용하여 MySQL 서버에 테이블을 만들고 싶습니다.

CREATE TABLE `parts` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `name` mediumtext NOT NULL,
      `display_status` int(11) NOT NULL,
       UNIQUE KEY `name` (`name`),
       PRIMARY KEY (`id`)
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

그러나 이것은 오류를 만들었다

    BLOB/TEXT column 'name' used in key specification without a key length

`name`의 유형을 varchar ..로 변경하면 작동합니다!

텍스트 열을 UNIQUE KEY 로 만들 수 있는지 알려 주시겠습니까?

 

해결 방법

 

기본적으로 Text 열을 UNIQUE 키로 사용할 수 없습니다. 실제로 이러한 큰 열은 고유하지 않고 더 많은 중복이있을 수 있기 때문입니다. 따라서 hashing 메서드로 이동하여 해당 출력을 UNIQUE 제약 조건으로 사용하십시오.

이것이 도움이되기를 바랍니다.

 

참조 페이지 https://stackoverflow.com/questions/14033378

 

 

반응형

댓글