반응형
텍스트 열을 고유 키로 만들기
나는 테이블을 만들고 싶습니다.MySQL
서버에 접속mediumtext
란에UNIQUE KEY
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로 변경할 때..효과가 있어요!
당신은 내가 텍스트 칼럼을 만들수 있는지 알수있습니까?UNIQUE KEY
기본적으로 사용할 수 없습니다.Text
란에UNIQUE
키. 실제로는 그런 큰 열이 고유하지 않을 것이고 더 많은 중복이 발생할 가능성이 있기 때문입니다.자, 자.hashing
방법 및 출력을 고유한 제약 조건으로 사용합니다.
varchar 길이에 대한 255의 제한이 더 이상 적용되지 않습니다.설명서에서:
VARCHAR 열의 값은 가변 길이 문자열입니다.길이는 MySQL 5.0.3 이전의 0 ~ 255, 5.0.3 이상 버전에서는 0 ~ 65,535의 값으로 지정할 수 있습니다.
고유 인덱스는 알려진 최대 길이를 가져야 합니다(내부 구현으로 인해 mysql 요구 사항). 따라서 가장 긴 기대 값에 적합하도록 충분히 큰 값을 가진 varchar를 사용합니다(예:
...
`name` varchar(65535) NOT NULL, -- for example
...
이것이 매우 오래된 것은 알지만 다른 사람이 원하는 경우에는 varchar 또는 텍스트 열을 고유하게 만들 수 있습니다. 테이블 작성 후에 수행하면 됩니다.
DROP TABLE IF EXISTS meeting;
CREATE TABLE meeting (
meeting_id int(11) UNSIGNED UNIQUE NOT NULL PRIMARY KEY AUTO_INCREMENT,
meeting_name varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL
);
CREATE UNIQUE INDEX meeting ON meeting(meeting_name);
언급URL : https://stackoverflow.com/questions/14033378/make-text-column-as-unique-key
반응형
'IT' 카테고리의 다른 글
jQuery 클릭 / 두 함수 간 전환 (0) | 2023.11.04 |
---|---|
HttpContext.현재의.라우팅 요청 시 세션이 null입니다. (0) | 2023.10.30 |
풀 후 이전 버전과 변경된 파일을 어떻게 다릅니까? (0) | 2023.10.30 |
How can I use a MySql User Defined Variable in a .NET MySqlCommand? (0) | 2023.10.30 |
jQuery에서 특정 폼 요소를 선택하는 방법은? (0) | 2023.10.30 |