Clone 메서드(ADO)
기존 Recordset 개체에서 중복 Recordset 개체를 만듭니다. 필요에 따라 복제본을 읽기 전용으로 지정합니다.
통사론
Set rstDuplicate = rstOriginal.Clone (LockType)
반환 값
Recordset 개체 참조를 반환합니다.
매개 변수
rstDuplicate
만들려는 중복 Recordset 개체를 식별하는 개체 변수입니다.
rstOriginal
복제할 Recordset 개체를 식별하는 개체 변수입니다.
LockType
선택적. 원래 Recordset잠금 형식 또는 읽기 전용 Recordset지정하는 LockTypeEnum 값입니다. 유효한 값은 adLockUnspecified 또는 adLockReadOnly .
발언
Clone 메서드를 사용하여 여러 개의 중복 Recordset 개체를 만들 수 있습니다. 특히 지정된 레코드 집합에서 현재 레코드를 두 개 이상 유지하려는 경우 더욱 그렇습니다. Clone 메서드를 사용하면 원본과 동일한 정의를 사용하는 새 Recordset 개체를 만들고 여는 것보다 더 효율적입니다.
원래 RecordsetFilter 속성(있는 경우)은 복제에 적용되지 않습니다. 새 RecordsetFilter 속성을 설정하여 결과를 필터링합니다. 기존 필터 값을 복사하는 가장 간단한 방법은 다음과 같이 직접 할당하는 것입니다.
rsNew.Filter = rsOriginal.Filter
새로 만든 클론의 현재 레코드가 첫 번째 레코드로 설정됩니다.
Recordset 개체 하나에 대한 변경 내용은 커서 유형에 관계없이 모든 클론에 표시됩니다. 그러나 원래 RecordsetRequery 실행하면 클론이 더 이상 원본과 동기화되지 않습니다.
원본 Recordset 닫아도 복사본이 닫히지 않으며 복사본을 닫거나 원본 또는 다른 복사본을 닫지 않습니다.
책갈피를 지원하는 Recordset 개체만 복제할 수 있습니다. 책갈피 값은 서로 바꿔서 사용할 수 있습니다. 즉, 한 Recordset 개체의 책갈피 참조는 해당 클론에서 동일한 레코드를 참조합니다.
트리거되는 일부 Recordset 이벤트는 모든 Recordset 클론에서도 발생합니다. 그러나 현재 레코드는 복제된 레코드 집합다를 수 있으므로 클론에 대해 이벤트가 유효하지 않을 수 있습니다. 예를 들어 필드 값을 변경하면 변경된 Recordset 모든 클론에서 WillChangeField 이벤트가 발생합니다. 복제된 RecordsetWillChangeField 이벤트의 Fields 매개 변수는 변경이 발생한 원래 Recordset 현재 레코드와 다른 레코드일 수 있는 클론의 현재 레코드 필드를 참조합니다.
다음 표에서는 모든 Recordset 이벤트의 전체 목록을 제공합니다. Clone 메서드를 사용하여 생성된 레코드 집합 클론에 대해 유효하고 트리거되는지 여부를 나타냅니다.
이벤트 | 클론에서 트리거되었나요? |
---|---|
EndOfRecordset | 아니요 |
FetchComplete | 아니요 |
FetchProgress | 아니요 |
fieldChangeComplete | 예 |
moveComplete | 아니요 |
RecordChangeComplete | 예 |
RecordsetChangeComplete | 아니요 |
WillChangeField | 예 |
WillChangeRecord | 예 |
WillChangeRecordset | 아니요 |
WillMove | 아니요 |
적용 대상
ADO(Recordset 개체)