데이터베이스 프로그래밍을 위해 ASP에 내장된 ADO 구성 요소를 사용할 때 일반적으로 스크립트 시작 부분에서 연결을 열고 스크립트 끝에서 연결을 닫습니다. 그러나 대규모 스크립트의 경우 대부분의 경우 연결 열기 시간이 연결보다 길어집니다. 여는 데 시간이 훨씬 더 걸립니다. 따라서 서버 자원을 절약하기 위해서는 연결이 점유하고 있는 자원을 해제하기 위해 가능한 한 연결을 닫아야 하며, 레코드 세트를 닫지 않고 해당 레코드 세트의 연결을 닫는 기술을 연결 해제된 레코드 세트라고 하며, 레코드 세트 자체를 연결이 끊긴 레코드 세트라고 합니다.
아래에서는 이 기술의 사용을 설명하기 위해 예를 사용합니다. NorthWind.mdb는 Microsoft Access97과 함께 제공되는 데이터베이스이고 adovbs.inc 파일은 C:/Program Files/Common Files/System/ADO에서 찾을 수 있습니다.
다음과 같이 코드 코드를 복사합니다.
<% @LANGUAGE = VBScript %>
<!--#include 파일=adovbs.inc-->
<%
응답.만료 = 0
희미한 Cnn,objRS, strOut, strQ, strC
StrC= 드라이버={Microsoft Access 드라이버(*.mdb)}; DBQ= & Server.MapPath(/asp24) & /NorthWind.mdb;
'연결 설정
Cnn = Server.CreateObject(ADODB.Connection) 설정
Cnn.OpenStrC
'레코드세트 객체 생성
objRS 설정 = Server.CreateObject(ADODB.Recordset)
objRS.CursorLocation =adUseClient
objRS.CursorType = adOpenStatic
objRS.LockType = adLockOptimistic
strQ = 이동통신사 ID, 회사 이름, 이동통신사에서 가져온 전화번호 선택
objRS.Open strQ, Cnn, , , adCmdText
Set objRS.ActiveConnection = Nothing '레코드세트 연결 끊기
Cnn.Close '연결을 종료합니다
Cnn = 없음으로 설정
응답.쓰기 <HTML><BODY>
'아래의 손상된 레코드세트를 사용하세요.
동안 수행(objRS.EOF 아님)
strOut = objRS(배송업체 ID) & , & objRS(회사명) & , & objRS(전화번호)
Response.Write Server.HTMLEncode(strOut) & <BR>
objRS.MoveNext
고리
Response.Write <BR>레코드 추가 또는 삽입 준비:
'데이터베이스를 업데이트해야 하는 경우 연결을 다시 설정해야 합니다.
Cnn = Server.CreateObject(ADODB.Connection) 설정
Cnn.Open strC
objRS.ActiveConnection = Cnn으로 설정
objRS.Filter = 회사 이름 = '우펑'
objRS.EOF이면
objRS.AddNew
objRS(회사명) = 우펑
objRS(전화) = 571-7227298
objRS.업데이트
Response.Write 이 조건에 맞는 레코드가 없으면 추가하세요.<BR>
또 다른
objRS(전화) = 571-7227071
Response.Write 이 조건에 맞는 레코드가 존재하면 Update.<BR>
objRS.업데이트
종료 조건
objRS.ActiveConnection = 없음으로 설정
Cnn.닫기
Cnn = 없음 설정
objRS.닫기
objRS = 없음 설정
응답.쓰기 </BODY></HTML>
%>