안녕하세요.
ado 개체에서 항상 반복되는 부분을 제외하고 나머지 명령어들이 어떤 경우에 쓰이는지 알고 싶습니다.
제가 판단하기로는 항상 반복되는 부분은 다음과 같습니다.
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
rs.ActiveConnection = CurrentProject.Connection
rs.Open "select * from where
rs.Close
나머지 명령어의 경우
예를 들면
rs.cursorlocation = aduseclient
rs.cursortype = adopendynamic
rs.locktype = adlockoptimistic
안녕하세요.
rs.cursorlocation = aduseclient
폼이 실행된 상태에서 어떤 컨트롤을 클릭하냐에 따라 값이 달라져야 하는 경우에는 'rs.cursorLocation = adUseClient를 사용한다고 보시면 됩니다.
rs.CursorLocation = adUseClient : CursorLocation(레코드의 현재 위치)는 기본적으로 Server(서버)에 위치하는데, 이를 Client(클라이언트)로 이동시키는 것입니다.
예를 들어
CursorLocation을 Client로 설정해야 레코드의 개수를 정상적으로 표시할 수 있습니다.
그렇지 않으면 레코드 개수가 -1로 표시됩니다.
rs.cursortype = adopendynamic, rs.locktype = adlockoptimistic
입력, 수정, 삭제 시에는 rs.cursortype 과 rs.rocktype를 사용하고 단순히 데이터를 조회만 할 때는 사용하지 않습니다.
그러므로 입력, 수정, 삭제에 대한 내용인 경우에는 사용하시면 되세요.
데이터를 조회할 때는 단순히 조건에 만족하는 데이터만을 검색하면 되지만 수정이나 삭제를 할 때는 해당 위치로 가서 수정하거나 삭제해야 하므로 커서유형이나 잠금 유형을 지정해야 합니다.
좋은 하루 보내세요.
-
관리자2019-04-09 20:38:14
안녕하세요.
rs.cursorlocation = aduseclient
폼이 실행된 상태에서 어떤 컨트롤을 클릭하냐에 따라 값이 달라져야 하는 경우에는 'rs.cursorLocation = adUseClient를 사용한다고 보시면 됩니다.
rs.CursorLocation = adUseClient : CursorLocation(레코드의 현재 위치)는 기본적으로 Server(서버)에 위치하는데, 이를 Client(클라이언트)로 이동시키는 것입니다.
예를 들어
CursorLocation을 Client로 설정해야 레코드의 개수를 정상적으로 표시할 수 있습니다.
그렇지 않으면 레코드 개수가 -1로 표시됩니다.
rs.cursortype = adopendynamic, rs.locktype = adlockoptimistic
입력, 수정, 삭제 시에는 rs.cursortype 과 rs.rocktype를 사용하고 단순히 데이터를 조회만 할 때는 사용하지 않습니다.
그러므로 입력, 수정, 삭제에 대한 내용인 경우에는 사용하시면 되세요.
데이터를 조회할 때는 단순히 조건에 만족하는 데이터만을 검색하면 되지만 수정이나 삭제를 할 때는 해당 위치로 가서 수정하거나 삭제해야 하므로 커서유형이나 잠금 유형을 지정해야 합니다.
좋은 하루 보내세요.