NULL 값을 DML에 쓰고 NULL을 기본값으로 쓰는 것의 차이점은 무엇입니까? NULL 값을 쓰는 것이 나쁜 습관입니까? 적응할 방법을 결정할시기.DML에서 NULL과 NULL ("") 사이의 차이
답변
NULL은 데이터와 함께 1 바이트 플래그를 저장합니다. Null ('')이 1 바이트 플래그를 저장하지 않고 필드의 공백 값이 Null로 처리되는 경우 즉, 기본값으로 " null로. 따라서 기본 값과 함께 null을 사용하는 것이 좋습니다.
Sarveshmishra가 정확합니다. 질문의 다른 부분에 대답하려면 - 그것이 좋은 연습인지 아닌지는 레코드 형식을 사용하는 방법에 달려 있습니다. 바이트 플래그로
NULL은 주로 모호 (즉, 실제 데이터와 충돌의 위험 없음) 추가 기록 폭의 비용으로 제공 Ab의 론적 내에서 사용할 NULL의 표현입니다.
좋은 들면 : 파일 기반 데이터 : 엄격 정확한 널 취급 내에 그래프 (및 기록 폭 번역 (재 포맷)의 선정이 가능)위한
나쁜 사이에 필요한 경우 소스 및 대상 시스템과의 상호 교환. (파일 기반) 대량 로더 (예 : SQL 서버 BCP를 통해 해당 데이터베이스 출력을 참고.)
NULL (기본값)는 특정 문자 시퀀스 (또는 제로 폭 문자열)로 NULL 인코딩합니다. 선택한 인코딩은 업스트림/다운 스트림 인터페이스 계약과 일치해야합니다. 그렇지 않으면 데이터 충돌 위험이 있습니다 (예 : 데이터베이스에서 ""<> NULL이지만 NULL ("")은 NULL을 ""로 처리합니다).
에 적합 : 데이터 교환 업스트림/다운 스트림 또는 ""과 NULL 간의 구분이 중요하지 않은 곳.
불량 : : 엄격한 null 처리가 보장됩니다.
엄격한 null 처리와 충돌 위험이없는 데이터 교환의 경우, 대체 전략은 인터페이스 계약에서 명시 적 null 플래그를 정의하는 것입니다.
거기에 1 바이트 플래그의 목적을 알려주십시오. – Omniverse10