아핫뉴스실시간 인기검색어
아핫뉴스 화산 이미지
아하

생활

생활꿀팁

탈퇴한 사용자
탈퇴한 사용자

mssql에서 분명 delete했는데 select에서 데이터가 왜 보이나요??

오늘 프로그램 테스트하면서 insert한 내용을 db에서 직접 쿼리로

분명 delete하고 commit이 난상태에서 잘 지워졌나 확인하려고

select을 했는데 데이터가 왜 보일까요??

그런데 프로그램에선 select해도 안보이는걸로 나오구요

이해가 안되서 여쭙습니다

    55글자 더 채워주세요.
    1개의 답변이 있어요!
    • 탈퇴한 사용자
      탈퇴한 사용자

      안녕하세요??

      일단 먼저 MSSQL Server의 DB구조를 보게되면

      heap테이블과 클러스터형 테이블로 나뉘게 되는데

      heap테이블은 클러스터형 인덱스가 없을 경우 생성되는 구조이고 특정한 순서로 저장되지 않는게

      특징입니다.

      반면 클러스터형 테이블은 클러스터형 인덱스로 기준으로 순서대로 저장되구요

      지금 보여지는 현상은 삭제되면서 중간중간 비어있는 DB공간때문에 발생한 문제 같고

      테이블 Rebuild를 통해서 재정렬 하시면 데이터는 원상복구될꺼같습니다.

      alter table TableName rebuild