2012-04-20 5 views

답변

3

이는 Informix SQL의 배후에있는 데이터 서버에 따라 다릅니다.

데이터 서버가 SE (표준 엔진)이고 바람이 불고있는 경우 (특히 이전에 삭제 된 행에 이전에 할당 된 공간이 아직 다른 곳에서 재사용되지 않은 경우) .dat 파일을 수정하여 'dead row'마커 (C의 '\0')를 'live row'마커 (C의 '\n')로 변경할 수 있습니다. 그런 다음 표의 색인을 bcheck 또는 secheck (Informix SE 버전에 따라 다름)으로 확인해야합니다. 이것은 C-ISAM 데이터 파일에 대한 내부 지식에 의존합니다.

데이터 서버가 IDS (요즘 Informix Dynamic Server, 일명 Informix) 인 경우 대답은 실질적으로 '아니오'입니다. 확실히 '재사용되지 않는 공간'이라는 경고가 적용됩니다. 그러나 C-ISAM (SE)처럼 행 마커의 끝은 간단하지 않으며 삭제 된 데이터가 저장된 위치를 쉽게 찾을 수있는 방법이 없으며 여러 페이지로 분할 된 행에 문제가 있습니다. 큰 열 크기 (4 KiB보다 크고, 대부분의 시스템에서 2 KiB보다 큼) 등. 따라서 실질적으로 대답은 '아니오'입니다.

관련 문제