[SQL] 고유 키와 같은 메이크업 텍스트 열
SQL고유 키와 같은 메이크업 텍스트 열
내가 UNIQUE 키와 MEDIUMTEXT 열이 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
내가 VARCHAR에 name``의 유형을 변경하면 .. 그것을 작동합니다!
내가 할 수있는 경우에 당신은 UNIQUE KEY로 텍스트 열을 만들기 위해 말할 수있다
해결법
-
==============================
1.기본적으로 당신은 UNIQUE 키로 텍스트 열을 사용할 수 없습니다. 실질적으로 그렇게 큰 열은 고유하지 않습니다 더 많은 중복의 기회가 될 수 있기 때문에. 그래서 해싱 방법에 대한 가서 UNIQUE 제약 조건으로 그 출력을 사용합니다.
기본적으로 당신은 UNIQUE 키로 텍스트 열을 사용할 수 없습니다. 실질적으로 그렇게 큰 열은 고유하지 않습니다 더 많은 중복의 기회가 될 수 있기 때문에. 그래서 해싱 방법에 대한 가서 UNIQUE 제약 조건으로 그 출력을 사용합니다.
이 당신을 도움이되기를 바랍니다
-
==============================
2.VARCHAR 길이 255의 제한이 더 이상 적용되지 않습니다. 문서에서 :
VARCHAR 길이 255의 제한이 더 이상 적용되지 않습니다. 문서에서 :
충분히 큰 값을 varchar를 사용은 예를 들어 가장 긴 기대 값을 맞게 있도록 고유 인덱스 (인해 내부 구현에 mysql을의 요구 사항) 알려진 최대 길이가 있어야합니다
... `name` varchar(65535) NOT NULL, -- for example ...
from https://stackoverflow.com/questions/14033378/make-text-column-as-unique-key by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 나는 SQL의 숫자를 인용해야 하는가? (0) | 2020.07.12 |
---|---|
[SQL] 참조 테이블에 기본 또는 후보 키가 없습니다 (0) | 2020.07.12 |
[SQL] PHP에서 페이지 매김 (0) | 2020.07.12 |
[SQL] 오라클 10g / 11g Mac 용 [마감] (0) | 2020.07.12 |
[SQL] 지수하지만 차없는 키와 MySQL의 테이블 (0) | 2020.07.12 |