Partager via


OleDbConnection.GetOleDbSchemaTable(Guid, Object[]) Méthode

Définition

Retourne les informations de schéma à partir d'une source de données de la manière indiquée par un GUID et après l'application des restrictions spécifiées.

public:
 System::Data::DataTable ^ GetOleDbSchemaTable(Guid schema, cli::array <System::Object ^> ^ restrictions);
public System.Data.DataTable? GetOleDbSchemaTable (Guid schema, object?[]? restrictions);
public System.Data.DataTable GetOleDbSchemaTable (Guid schema, object[] restrictions);
member this.GetOleDbSchemaTable : Guid * obj[] -> System.Data.DataTable
Public Function GetOleDbSchemaTable (schema As Guid, restrictions As Object()) As DataTable

Paramètres

schema
Guid

Une des valeurs OleDbSchemaGuid qui spécifie la table de schéma à retourner.

restrictions
Object[]

Tableau de Object de valeurs de restriction. Ces dernières s'appliquent dans l'ordre des colonnes de restriction. Autrement dit, la première valeur de restriction s'applique à la première colonne de restriction, la deuxième valeur de restriction s'applique à la deuxième colonne de restriction et ainsi de suite.

Retours

DataTable qui contient les informations de schéma demandées.

Exceptions

Le jeu de restrictions spécifié n'est pas valide.

Le jeu de lignes du schéma spécifié n'est pas pris en charge par le fournisseur OLE DB.

- ou -

Le paramètre schema contient une valeur de DbInfoLiterals et le paramètre restrictions contient une ou plusieurs restrictions.

Exemples

L’exemple suivant retourne une liste de tables dans une base de données.

static DataTable GetSchemaTable(string connectionString)
{
    using (OleDbConnection connection = new
               OleDbConnection(connectionString))
    {
        connection.Open();
        DataTable schemaTable = connection.GetOleDbSchemaTable(
            OleDbSchemaGuid.Tables,
            new object[] { null, null, null, "TABLE" });
        return schemaTable;
    }
}
Public Function GetSchemaTable(ByVal connectionString As String) _
    As DataTable

    Using connection As New OleDbConnection(connectionString)
        connection.Open()

        Dim schemaTable As DataTable = _
            connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, _
            New Object() {Nothing, Nothing, Nothing, "TABLE"})
        Return schemaTable
    End Using
End Function

Remarques

La table de schéma est retournée sous la forme d’un DataTable qui a le même format que l’ensemble de lignes de schéma OLE DB spécifié par le schema paramètre. Utilisez le restrictions paramètre pour filtrer les lignes à retourner dans (par exemple, en spécifiant des restrictions pour le DataTable nom de la table, le type, le propriétaire ou le schéma). Lorsque vous passez des valeurs dans le tableau, incluez des chaînes vides ou des valeurs null pour les éléments du tableau qui ne contiennent pas de valeurs. Si vous passez un tableau vide à restrictions, toutes les lignes (une pour chaque table) sont retournées dans l’ordre par défaut. Les valeurs du tableau correspondent à l’ordre des colonnes dans la table source et DataTable. Chaque élément du tableau de restrictions est comparé au contenu de la colonne correspondante dans l’ensemble de lignes du schéma. Par exemple, le premier élément du tableau de restrictions est comparé à la première colonne de l’ensemble de lignes. Si un élément de restriction n’est pas null, seules les lignes de l’ensemble de lignes de schéma qui correspondent exactement à la valeur de la restriction sont ajoutées au résultat DataTable.

La OleDbConnection méthode appelle la méthode OLE DB IDBSchemaRowset ::GetRowset sous-jacente à l’aide des règles de conversion standard du Common Language Runtime. Pour plus d’informations, consultez Types de données COM.

Vous pouvez récupérer des informations sur les littéraux à l’aide de DbInfoLiterals. Cela fournit des informations équivalentes à l’appel de l’interface OLE DB IDBInfo ::GetLiteralInfo ou de la méthode ADO Connection.OpenSchema avec la adSchemaDBInfoLiterals constante.

S’applique à

Voir aussi