MySQL 고유 제약 조건: Null 값
MySQL에서는 지정된 열에 있는 값의 고유성을 보장하기 위해 고유 제약 조건이 적용됩니다. 그러나 이메일 주소를 처리할 때 일반적인 시나리오는 선택 사항이거나 제공되지 않은 주소를 나타내기 위해 null 값을 사용하는 것입니다. 이로 인해 질문이 제기됩니다.
MySQL이 고유 제약 조건이 있는 열에 여러 개의 null 값을 허용할 수 있습니까?
답변:
예, MySQL은 고유 제약 조건이 있는 열 내에서 여러 null 값을 허용합니다. 이 동작은 다른 특정 데이터베이스 시스템과 다릅니다.
예:
다음 SQL 문은 고유한 것으로 정의되고 허용되는 정수 열 x가 있는 table1이라는 테이블을 생성합니다. null 값:
CREATE TABLE table1 (x INT NULL UNIQUE);
이 테이블에 중복된 null 값을 삽입하면 오류:
INSERT table1 VALUES (1); INSERT table1 VALUES (1); -- Duplicate entry '1' for key 'x' INSERT table1 VALUES (NULL); INSERT table1 VALUES (NULL);
table1의 모든 레코드를 검색하는 쿼리를 실행하면 다음 결과가 생성됩니다.
SELECT * FROM table1;
x |
---|
NULL |
NULL |
1 |
참고: 이 동작은 특정합니다. MySQL에. SQL Server 2005 및 이전 버전과 같은 다른 데이터베이스 시스템에서는 고유 제약 조건이 있는 열에 단일 Null 값 허용을 제한합니다.
위 내용은 MySQL의 고유 제약 조건이 여러 NULL 값을 처리할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!