다음을 통해 공유


매개 변수화되지 않은 명령 작업

매개 변수화되지 않은 명령의 경우 모든 공급자 명령이 실행되고 명령 실행 중에 Recordsets가 만들어집니다. 명령이 동기적으로 실행되면 모든 Recordsets가 완전히 채워집니다. 비동기 채우기 모드를 선택한 경우 Recordsets의 채워진 상태는 모집단 모드 및 Recordsets의 크기에 따라 달라집니다.

예를 들어 parent-command는 Customers 테이블에서 회사의 고객 Recordset을 반환할 수 있으며, child-command는 Orders 테이블의 모든 고객에 대한 주문 Recordset을 반환할 수 있습니다.

SHAPE {SELECT * FROM Customers}   
   APPEND ({SELECT * FROM Orders} AS chapOrders   
   RELATE customerID TO customerID)  

매개 변수화되지 않은 부모-자식 관계의 경우 각 부모 및 자식 Recordset 개체에 연결할 공통 열이 있어야 합니다. 열의 이름은 RELATE 절, parent-column, child-column의 이름이 지정됩니다. 열의 이름은 해당 Recordset 개체에서 다를 수 있지만 의미 있는 관계를 지정하려면 동일한 정보를 참조해야 합니다. 예를 들어 CustomersOrders Recordset 개체에는 모두 customerID 필드가 있을 수 있습니다. 자식 Recordset의 멤버 자격은 공급자 명령에 의해 결정되므로 자식 Recordset에는 분리된 행이 포함될 수 있습니다. 이러한 분리된 행은 추가 다시 셰이핑 없이 액세스할 수 없습니다.

데이터 셰이핑은 부모 Recordset에 챕터 열을 추가합니다. 챕터 열의 값은 RELATE 절을 충족하는 자식 Recordset의 행에 대한 참조입니다. 즉, 챕터 자식의 모든 행의 child-column에 있는 것과 동일한 값이 지정된 부모 행의 parent-column에 있습니다. 여러 TO 절이 동일한 RELATE 절에 사용되는 경우 AND 연산자를 사용하여 암시적으로 결합됩니다. RELATE 절의 부모 열이 부모 Recordset의 키를 구성하지 않으면 단일 자식 행에 여러 부모 행이 있을 수 있습니다.

챕터 열의 참조에 액세스하면 ADO는 참조로 표시되는 Recordset을 자동으로 검색합니다. 매개 변수화되지 않은 명령에서는 전체 자식 Recordset이 검색되었지만 이 챕터는 행의 하위 집합만 표시합니다.

추가된 열에 챕터 별칭이 없으면 자동으로 이름이 생성됩니다. 열의 Field 개체가 Recordset 개체의 Fields 컬렉션에 추가되고 해당 데이터 형식은 adChapter가 됩니다.

계층적 Recordset을 탐색하는 방법에 대한 자세한 내용은 계층적 레코드 집합의 행 액세스를 참조하세요.

참고 항목

데이터 셰이핑 예제
공식적인 셰이프 문법
일반적인 셰이프 명령