> 데이터 베이스 > MySQL 튜토리얼 > Oracle은 빈 문자열을 NULL로 처리합니까?

Oracle은 빈 문자열을 NULL로 처리합니까?

Barbara Streisand
풀어 주다: 2025-01-22 04:52:12
원래의
305명이 탐색했습니다.

Does Oracle Treat Empty Strings as NULL?

오라클의 고유한 빈 문자열 처리: NULL 또는 NULL이 아닌가?

빈 문자열('')을 NULL과 동일시하는 Oracle 9i의 관행은 많은 개발자에게 혼란을 가져왔습니다. 문자를 저장하도록 설계된 데이터 유형이 유효한 문자열과 누락된 데이터를 동일시하는 이유는 무엇입니까?

이러한 특성을 이해하려면 오라클의 역사를 먼저 살펴봐야 합니다. SQL 표준이 출현하기 전에 Oracle은 빈 문자열을 NULL 값으로 처리하기 위해 VARCHAR/VARCHAR2 열을 정의했습니다. 이 설계는 모든 형태의 누락 데이터를 포괄하는 NULL에 대한 Oracle의 고유한 해석에서 비롯됩니다.

SQL 표준이 등장하고 NULL과 빈 문자열의 차이가 확립되자 Oracle은 딜레마에 직면했습니다. 기존 VARCHAR 열의 동작을 변경하면 이전 코드가 손상되고 표준을 위반하는 것은 업계 관행에서 벗어나게 됩니다. 중단을 최소화하기 위해 Oracle은 원래 정의를 유지하기로 논란의 여지가 있는 결정을 내렸습니다.

Oracle은 이러한 관행이 표준에서 벗어났다는 점을 인정하지만 표준에 맞춰 향후 변경이 가능하도록 여지를 남겨둡니다. 따라서 개발자는 향후 코드 호환성을 위해 VARCHAR보다 VARCHAR2를 선호하는 것이 좋습니다. Oracle이 이러한 비정상적인 동작을 유지하는 이유에 대해 많은 추측이 있었지만 그 이유는 아마도 끊임없이 변화하는 표준 환경에서 이전 버전과의 호환성을 유지해야 할 필요성에 뿌리를 두고 있기 때문에 공식적인 미스터리로 남아 있습니다.

위 내용은 Oracle은 빈 문자열을 NULL로 처리합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿