InterBase 에서 TIBDataSet 을 DeleteSQL을 이용 데이타를 전부 삭제하고
다른 데이타를 기록하는 부분을 만들고 잇읍니다.
헌데 이렇게하면 GDB파일의 크기가 계속 해서 늘어나더라구여.
A 와 B 테이블이 잇을경우, B 테이블을 전부 삭제하고, A 내용을 B에 추가
하고, 다시 B에 레코드를 전부 삭제하고, A의 레코드를 B에 추가하고, 이런
루틴을 반복하게 되면. B가 들어 있는 데이타베이스의 GDB 파일이 A의 크기만큼
계속해서 늘어 나게 됩니다.
삭제할때 물리적인 삭제는 안되고, 그냥 레코드에 삭제 표시만 하는것 같습니다.
with IBDataSet do
begin
Close;
DeleteSQL.Clear;
DeleteSQL.Add('DELETE FROM TABLENAME')
Open;
end;
이런식으로 햇는데, Delete시 실제 하드 용량도 줄어 들수 있게 하는 방법좀 알려
주시기 바랍니다.
그럼 좋은 하루 되세여.
Open; -----> ExecSQL;
으로 써보세요