레코드 및 스트림
ADO는 현재 관계형 데이터베이스와 같은 데이터 원본의 정보에 액세스하는 기본 수단으로 Recordset 개체를 제공합니다. 그러나 일부 공급자는 공급자의 데이터를 조작할 수 있는 대체 또는 보완 개체로 Record 및 Stream 개체를 지원합니다. Record 동작에 대한 자세한 내용은 공급자의 설명서를 참조하세요.
레코드
Record 개체는 기본적으로 하나의 행 Recordset로 작동합니다. 그러나 Record는 Recordset에 비해 기능이 제한되어 있으며 이들의 속성과 메서드는 다릅니다. Record 개체의 데이터 원본은 공급자로부터 한 행의 데이터를 반환하는 명령일 수 있습니다. Recordset 개체가 아닌 Record 개체를 사용하여 한 행의 데이터를 반환하는 쿼리에서 결과를 수신하면 더 복잡한 Recordset 개체를 인스턴스화하는 오버헤드가 제거됩니다.
Record 개체는 특히 인터넷 게시용 Microsoft OLE DB 공급자과 같은 기존 관계형 데이터베이스 이외의 데이터 원본에 대한 공급자와 함께 다른 용도로 사용할 수 있습니다. 처리해야 하는 대부분의 정보는 데이터베이스의 테이블이 아니라 최신 파일 시스템의 전자 메일 시스템 및 파일의 메시지로 존재합니다. Record 및 Stream 개체는 관계형 데이터베이스 이외의 원본에 저장된 정보에 쉽게 액세스할 수 있습니다.
Record 개체는 파일 시스템의 디렉터리 및 파일, 메일 시스템의 폴더 및 메시지와 같은 데이터를 나타내고 관리할 수 있습니다. 이러한 목적을 위해 Record의 원본은 열려 있는 Recordset의 현재 행, 절대 URL 또는 열려 있는 Connection 개체와 함께 상대 URL일 수 있습니다.
일반적으로 Recordset를 사용하여 폴더 또는 디렉터리 같은 계층 구조의 컨테이너 또는 부모를 나타낼 수 있습니다. Record를 사용하여 부모 컨테이너의 한 노드(예: 파일 또는 문서)에 대한 특정 정보를 반환할 수 있습니다. Records가 이러한 유형의 정보를 나타내는 데 사용되는 주된 이유는 이러한 데이터 원본이 이질적이기 때문입니다. 즉, 각 Record의 집합과 필드 수가 다를 수 있습니다. 데이터베이스의 행을 포함하는 기존 Recordset는 동질적입니다. 즉, 각 행의 수와 필드 유형이 동일합니다.
인터넷 게시 공급자와 같은 공급자에서 이 다른 유형의 데이터를 처리하기 위해 Record 개체를 사용하는 방법에 대한 자세한 내용은 인터넷 게시용 ADO 사용을 참조하세요.
스트림
Stream 개체는 바이트 스트림을 읽고 쓰고 관리하는 수단을 제공합니다. 이 바이트 스트림은 텍스트 또는 이진일 수 있으며 시스템 리소스에 의해서만 크기가 제한됩니다. 일반적으로 ADO Stream 개체는 다음과 같은 용도로 사용됩니다.
XML 형식으로 저장된 Recordset의 데이터를 포함합니다. 저장된 Recordset의 이러한 XML 스트림은 새 Recordset를 열 때 원본으로 사용할 수 있습니다. 자세한 내용은 스트림 및 지속성을 참조하세요.
CommandText 대신 공급자에 대해 실행할 CommandStreams를 포함합니다. 예를 들어 XML UpdateGrams는 SQL Server용 Microsoft OLE DB 공급자에 대한 명령의 원본으로 사용할 수 있습니다.
SQL Server용 Microsoft OLE DB 공급자의 XML 결과와 같이 Recordset 이외의 형식으로 공급자로부터 결과를 받습니다. 자세한 내용은 Streams로 Resultsets 검색을 참조하세요.
일반적으로 인터넷 게시용 Microsoft OLE DB 공급자와 같은 공급자와 함께 사용되는 파일 또는 메시지를 구성하는 텍스트 또는 바이트를 포함합니다. Stream 개체 사용에 대한 자세한 내용은 인터넷 게시용 ADO 사용을 참조하세요.
Stream 개체는 다음에서 열 수 있습니다.
URL로 지정된 간단한 파일입니다.
Stream 개체를 포함하는 Record 또는 Recordset의 필드입니다.
디렉터리 또는 복합 파일을 나타내는 Record 또는 Recordset 개체의 기본 스트림입니다.
단순 파일의 URL을 포함하는 리소스 필드입니다.
특정 원본이 전혀 없습니다. 이 경우 Stream 개체가 메모리에서 열립니다. 데이터를 쓴 다음, 다른 Stream 또는 파일에 저장할 수 있습니다.
Recordset의 BLOB 필드입니다.
이 섹션에서는 다음 항목을 다룹니다.