아직 파고 들지 않아서 원인은 정확하지 않다.

20년전 VB나 MFC에서 Recordset 을 사용하려면 항상 스트레스였다.

 

CString strSQL = L"SELECT * FROM AreaList";
CRecordset rs(&m_Db);
rs.Open(CRecordset::forwardOnly, strSQL);

 

long cnt = rs.GetRecordCount();
rs.MoveLast();
rs.MoveFirst();
long cnt2 = rs.GetRecordCount();

 

 

테이블 데이터는 3개.

cnt 는 리턴값이 1이고, cnt2 는 리턴값이 3 이다.

 

자료구조를 공부해보면 LIST 라는 형태를 알게된다.

현재의 포지션이 EOF를 모르는 상태와 같다.

그 끝을 향해 이동한뒤에야 아~  여기가 끝이구나.. 하는 듯.

왜 다시 First를 하냐면 첫번째 데이터부터 사용을 하기 위함이다.

Next Next Next... 하면서 데이터를 읽어보자.

Posted by +깡통+