오라클 11g에서 테이블을 디자인하는 방법 나중에 오라클 12c의 "Temporal validity" 기능과 호환 가능합니까?Oracle 12c에서 임시 유효성을 사용하는 방법은 무엇입니까?
는오라클 (12c)의 온라인 설명서 (http://docs.oracle.com/cd/E16655_01/server.121/e17209/statements_7002.htm#CJADHJHB)
ALTER TABLE my_table ADD (PERIOD FOR my_valid_time (my_valid_start, my_valid_end));
그래서 하나가 11g에 이미 좋은 오래된 VALID_FROM 및 valid_till 열을 사용하고 적절한로 강화 할 수 SQL 언어 가이드 기계가 시간 유효성을 정의하는 방법을 지정합니다 12c의 기간, 맞습니까?
"항상 이후"와 "영원히"고정 된 마법 날짜를 사용하는 데이터베이스를 상속했습니다 (예 : DATE '1900-01-01'
및 DATE '3999-12-31'
). 분명히 12c는 대신 NULL
을 사용합니다.
고정 마법 날짜를 사용하지 않고 NULL
날짜로 전환해야합니까?
위대한 질문! 나는 아직 12c를 아직 사용하지 않았으므로 대답 대신에 주석을 추가한다. Temporarl Validity 기능에 대한 초기 읽기 기능은 NULL이 더 좋지만 마법 날짜도 올바르게 작동합니다. 그들은 오라클의 CBO에 다소 간섭 할 수 있으며 질의 계획이 좋지 않을 수 있습니다.하지만 항상 어쨌든 마법의 가치가있는 경우가 있습니다. 12c의 새로운 히스토그램은이를 완화하는 데 도움이 될 수 있습니다. –