Compartilhar via


Trabalhando com conjuntos de linhas do esquema no ADOMD.NET

Quando você precisa de mais metadados do que os que estão disponíveis no modelo de objeto do ADOMD.NET, o ADOMD.NET oferece o recurso de recuperação de todo o intervalo de conjuntos de linhas do esquema XMLA (XML for Analysis), OLE DB, OLE DB for OLAP e OLE DB for Data Mining:

  • Metadados XML for Analysis
    Os conjuntos de linhas do esquema do XML for Analysis oferecem um método para a recuperação de informações de baixo nível sobre o servidor. As informações disponíveis incluem as fontes de dados disponíveis no servidor, as palavras-chave reservadas pelo provedor, o literais suportados pelo provedor e mais. Você pode até usar um conjunto de linhas do esquema do XML for Analysis para descobrir todos os conjuntos de linhas do esquema suportados pelo provedor.

    Para obter mais informações: Conjuntos de linhas de esquema do XML for Analysis

  • Metadados OLE DB
    Os conjuntos de linhas do esquema do OLE DB oferecem um método padrão do setor para a recuperação de informações de uma variedade de provedores.

    Para obter mais informações: Conjuntos de linhas do esquema OLE DB

  • Metadados OLAP
    As informações de esquema oferecidas para uma fonte de dados analíticos incluem bancos de dados ou catálogos disponíveis na fonte de dados analíticos, cubos e modelos de mineração em um banco de dados, funções existentes para cubos na fonte de dados e mais.

    Para obter mais informações: Conjuntos de linhas de esquema OLE DB para OLAP

  • Metadados de mineração de dados
    Além dos metadados OLAP, os metadados de mineração de dados podem ser recuperados por meio de conjuntos de linhas do esquema. Os conjuntos de linhas disponíveis exibem informações nos modelos de mineração de dados disponíveis no banco de dados, os algoritmos de mineração disponíveis, os parâmetros exigidos pelo algoritmo, estruturas de mineração e mais.

    Para obter mais informações: Conjuntos de linhas de esquema de mineração de dados

Para cada um dos vários conjuntos de linhas do esquema, você recupera metadados do conjunto de linhas passando um GUID ou nome XMLA com o método GetSchemaDataSet do objeto AdomdConnection.

Recuperando metadados passando GUIDs

A classe AdomdSchemaGuid contém uma lista de campos que representam os conjuntos de linhas do esquema geralmente suportados por provedores e por fontes de dados analíticos. Para recuperar metadados gerais e específicos do provedor de um provedor ou de uma fonte de dados analíticos, use os GUIDs contidos no objeto AdomdSchemaGuid com um dos métodos a seguir:

ObservaçãoObservação

O provedor de dados do ADOMD.NET exibe informações de esquema por meio da funcionalidade disponibilizada por seu provedor e pela fonte de dados analíticos específicos. Cada provedor e fonte de dados pode fornecer metadados diferentes.

Recuperando metadados passando nomes XMLA

Os métodos a seguir obtém como argumentos o nome do esquema XMLA que identifica quais serão as informações de esquema a serem retornadas e uma matriz de restrições nas colunas retornadas:

Cada um destes métodos retorna uma instância de um objeto DataSet preenchido com as informações de esquema. O objeto DataSet pertence ao namespace System.Data da Biblioteca de Classes do Microsoft .NET Framework.

Exemplo

No exemplo a seguir, a função GetActions obtém uma conexão, o nome do cubo, a coordenada e um tipo de coordenada, recupera um Conjunto de linhas MDSCHEMA_ACTIONS e retorna as ações disponíveis na coordenada selecionada.

//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);
}

Consulte também

Referência

Recuperando metadados de uma fonte de dados analíticos