< 출처 : korea.internet.com, 지은이 : 최현진 >
Persisting Recordset은 Recordset 개체를 로컬 컴퓨터에 .dat 파일로 저장할 수 있게 한다. 이 파일을 이용해서 데이터 원본과의 연결 없이도 데이터를 조회하고 조작할 수 있다.
Pubs 데이터베이스의 Authors 테이블에 대한 Recordset 개체를 생성하고, LocalFile.dat로 저장하는 예제를 작성한다.
비주얼 베이직에서 새로운 프로젝트를 시작하고, 폼을 추가해서 다음과 같이 디자인한다.
[그림] Persistent Recordset 예제 화면
개체 | 속성 | 값 |
Form | Name | frmPersistentRs |
Caption | Persistent Recordset | |
CommandButton | Name | cmdOpen |
Caption | 1. Open | |
CommandButton | Name | cmdSaveFile |
Caption | 2. Save to File | |
CommandButton | Name | cmdClose |
Caption | 3. Close | |
CommandButton | Name | cmdOpenFile |
Caption | 4. Open from File | |
MSHFlexGrid | Name | Grid |
폼의 코드 모듈에 다음과 같이 코드를 작성한다.
01.
<font size=
"2"
>
Option
Explicit
02.
03.
Dim
adoCn
As
Connection
04.
Dim
adoRs
As
Recordset
05.
06.
Private
Sub
cmdClose_Click()
07.
Grid.Clear
08.
09.
adoRs.Close
10.
Set
adoRs =
Nothing
11.
12.
adoCn.Close
13.
Set
adoCn =
Nothing
14.
End
Sub
15.
16.
Private
Sub
cmdOpen_Click()
17.
Set
adoCn =
New
Connection
18.
adoCn.Open
"Provider=sqloledb;Data Source=(local);Initial Catalog=Pubs;User ID=sa;Password=;"
19.
20.
Set
adoRs =
New
Recordset
21.
adoRs.Open
"Select * from Authors"
, adoCn, adOpenStatic, adLockBatchOptimistic
22.
23.
Set
Grid.DataSource = adoRs
24.
End
Sub
25.
26.
Private
Sub
cmdOpenFile_Click()
27.
Set
adoRs =
New
Recordset
28.
adoRs.Open App.Path &
"\LocalFile.dat"
29.
30.
Set
Grid.DataSource = adoRs
31.
End
Sub
32.
33.
Private
Sub
cmdSaveFile_Click()
34.
adoRs.Save App.Path &
"\LocalFile.dat"
, adPersistADTG
35.
End
Sub
36.
</font>
예제 응용 프로그램을 실행하고, 1.Open 버튼은 Recordset 개체를 생성하고, 2 Save to File 버튼은 로컬 컴퓨터에 LocalFile.dat 파일로 Recordset 개체를 저장하고, 3. Close 버튼은 Recordset 개체를 닫는다. 4. Open from File 버튼은 LocalFile.dat 파일로부터 Recordset 개체를 생성한다.
데이터 원본과의 연결이 원할하지 않은 Sales Automation 같은 응용 프로그램에서 유용하게 사용될 수 있다. 또한 출장 중인 CEO가 회사의 경영정보 데이터를 메일로 받아서 로컬 컴퓨터에서 *.dat 파일로부터 Recordset 개체를 생성해서 네트워크에 접속한 것과 동일하게 응용 프로그램을 사용할 수 있도록 할 수 있다.