Programming

MySQL에서 빈 값을 허용하는 고유 제한

procodes 2020. 7. 11. 12:10
반응형

MySQL에서 빈 값을 허용하는 고유 제한


제품 코드를 저장하는 필드가 있습니다. 코드는 고유하지만 일부 제품에는 코드가 없습니다. 제공자 코드이므로 코드를 발명 할 수 없습니다.

MySQL에서 이런 종류의 제약이 가능합니까?

나는 저장 프로 시저와 트리거가있는 멍청한 사람이므로 솔루션 에이 중 하나가 포함되어 있으면 인내하십시오.

업데이트 : 열이 널이 아닙니다. 그래서 내가 이것을 할 수 없었습니다.


예, 당신은 이것을 할 수 있습니다. MySQL 참조 (버전 5.5)를 참조 하십시오 .

UNIQUE 인덱스는 인덱스의 모든 값이 고유해야하는 제약 조건을 만듭니다. 기존 행과 일치하는 키 값으로 새 행을 추가하려고하면 오류가 발생합니다. 모든 엔진에서 UNIQUE 인덱스는 NULL을 포함 할 수있는 열에 대해 여러 개의 NULL 값을 허용합니다.


예, 제품 코드 열을 Null 허용으로 설정하면 (로 선언되지 않음 NOT NULL) 고유 키는 NULL제품 코드가있는 여러 행을 허용합니다 .


MySQL은 여전히 ​​여러 행 NULL이 고유 한 열에 값을 가질 수 있도록합니다 .

참고 URL : https://stackoverflow.com/questions/1346765/unique-constraint-that-allows-empty-values-in-mysql

반응형