ADOMD.NET에서 스키마 행 집합 작업
ADOMD.NET 개체 모델에서 사용할 수 있는 메타데이터보다 많은 메타데이터가 필요한 경우 ADOMD.NET에서는 모든 범위의 XMLA (XML for Analysis), OLE DB, OLAP용 OLE DB 및 데이터 마이닝용 OLE DB 스키마 행 집합을 검색할 수 있는 기능을 제공합니다.
XML for Analysis 메타데이터
XML for Analysis 스키마 행 집합에서는 하위 수준의 서버 정보를 검색할 수 있는 방법을 제공합니다. 사용할 수 있는 정보에는 서버에서 사용 가능한 데이터 원본, 공급자에 예약된 키워드, 공급자가 지원하는 리터럴 등이 있습니다. XML for Analysis 스키마 행 집합을 사용하여 공급자가 지원하는 모든 스키마 행 집합을 검색할 수도 있습니다.참조 항목: XML for Analysis 스키마 행 집합
OLE DB 메타데이터
OLE DB 스키마 행 집합에서는 다양한 공급자의 정보를 검색할 수 있는 산업 표준 방법을 제공합니다.참조 항목: OLE DB 스키마 행 집합
OLAP 메타데이터
분석 데이터 원본에 제공되는 스키마 정보에는 분석 데이터 원본에서 사용할 수 있는 데이터베이스 또는 카탈로그, 데이터베이스의 큐브 및 마이닝 모델, 데이터 원본에 있는 큐브의 역할 등이 포함됩니다.참조 항목: OLAP용 OLE DB 스키마 행 집합
데이터 마이닝 메타데이터
스키마 행 집합을 사용하여 OLAP 메타데이터뿐 아니라 마이닝 메타데이터도 검색할 수 있습니다. 사용할 수 있는 행 집합은 데이터베이스에서 사용 가능한 데이터 마이닝 모델, 사용 가능한 마이닝 알고리즘, 알고리즘에 필요한 매개 변수, 마이닝 구조 등에 대한 정보를 노출합니다.참조 항목: 데이터 마이닝 스키마 행 집합
이러한 여러 스키마 행 집합 각각에 대해 AdomdConnection 개체의 GetSchemaDataSet 메서드를 통해 GUID 또는 XMLA 이름을 전달하여 행 집합에서 메타데이터를 검색할 수 있습니다.
GUID를 전달하여 메타데이터 검색
AdomdSchemaGuid 클래스에는 공급자와 분석 데이터 원본에서 가장 일반적으로 지원되는 스키마 행 집합을 나타내는 필드 목록이 있습니다. 공급자 또는 분석 데이터 원본에서 일반 및 공급자 관련 메타데이터를 모두 검색하려면 다음 메서드 중 하나에서 AdomdSchemaGuid 개체에 포함된 GUID를 사용합니다.
AdomdConnection..::..GetSchemaDataSet(Guid, array<Object>[]()[][])
AdomdConnection..::..GetSchemaDataSet(Guid, array<Object>[]()[][], Boolean)
[!참고]
ADOMD.NET 데이터 공급자는 특정 공급자 및 분석 데이터 원본에서 사용할 수 있도록 만든 기능을 통해 스키마 정보를 노출합니다. 각 공급자와 데이터 원본은 다른 메타데이터를 제공할 수 있습니다.
XMLA 이름을 전달하여 메타데이터 검색
다음 메서드에서는 반환할 스키마 정보를 식별하는 XMLA 스키마 이름과 반환된 열에 대한 제한으로 구성된 배열을 인수로 사용합니다.
AdomdConnection..::..GetSchemaDataSet(String, AdomdRestrictionCollection)
AdomdConnection..::..GetSchemaDataSet(String, AdomdRestrictionCollection, Boolean)
AdomdConnection..::..GetSchemaDataSet(String, String, AdomdRestrictionCollection)
AdomdConnection..::..GetSchemaDataSet(String, String, AdomdRestrictionCollection, Boolean)
이러한 메서드는 각각 스키마 정보로 채워진 DataSet 개체의 인스턴스를 반환합니다. DataSet 개체는 Microsoft .NET Framework 클래스 라이브러리의 System.Data 네임스페이스에 있습니다.
예
다음 예제에서는 GetActions 함수에서 연결, 큐브 이름, 좌표 및 좌표 형식을 사용하여 MDSCHEMA_ACTIONS 행 집합을 검색한 다음 선택한 좌표에서 사용할 수 있는 동작을 반환합니다.
//The following function can be called with the following data:
//ae.GetActions(conn, "Adventure Works","[Geography].[City]",6 );
//This would return a DataSet containing the actions available for cells
//in the Adventure Works cube on [Geography].[City].
private System.Data.DataSet GetActions(AdomdConnection Connection, string Cube, string Coordinate, int CoordinateType)
{
//Create a restriction collection to restrict the schema information to be returned.
AdomdRestrictionCollection restrictions= new AdomdRestrictionCollection();
restrictions.Add("CUBE_NAME", Cube);
restrictions.Add("COORDINATE", Coordinate);
restrictions.Add("COORDINATE_TYPE", CoordinateType); //6 = Cell coordinate
//Open and return a schema rowset, given the correct restictions
return Connection.GetSchemaDataSet("MDSCHEMA_ACTIONS", restrictions);
}