mysql - 데이터베이스 설계(체계 설계), NULL을 최대한 피해야 하는가?
仅有的幸福
仅有的幸福 2017-05-18 10:54:25
0
2
745

실제 현상

배운 내용:

  1. NULL 의미가 불분명합니다

  2. 쿼리 최적화가 쉽지 않습니다

  3. Null 값을 나타내는 경우 (논리적으로) 다른 대안이 있을 수 있습니다

    • VARCHAR(100) NULL이 아님 기본값 '';

    • INT는 NULL이 아닙니다. 기본값 0;

예상되는 현상

  1. Scheme을 설계할 때 NULL에 대한 태도를 이해하고 싶습니다. (시도해야 한다는 기사를 읽은 기억이 납니다: NOT NULL DEFAULT XXX)

仅有的幸福
仅有的幸福

모든 응답(2)
巴扎黑

네, NULL 열은 최대한 피해야 하며, 특히 인덱스 열의 경우 기본값을 최대한 명시적으로 설정해야 합니다. mysql에서는 null이 공간을 차지합니다. 값이 인덱싱되면 해당 인덱스는 유효하지 않습니다.

某草草

예, 필드가 비어 있지 않다고 판단할 때 is not null도 사용해야 합니다. mysql에서 NULL은 실제로 공간을 차지합니다. NULL 값은 B-트리 인덱스에 저장되지 않으므로 인덱스된 필드가 NULL이면 인덱스 효율이 많이 떨어집니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿