OleDbConnection.GetOleDbSchemaTable(Guid, Object[]) Metodo

Definizione

Restituisce informazioni di schema da un'origine dati come indicato da un GUID e dopo l'applicazione delle restrizioni specificate.

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

Parametri

schema
Guid

Uno dei valori di OleDbSchemaGuid che specifica la tabella dello schema da restituire.

restrictions
Object[]

Matrice Object di valori di restrizione. I valori sono applicati secondo l'ordine delle colonne di restrizione. Ovvero, il primo valore della restrizione si applica alla prima colonna di limitazione, il secondo valore della restrizione si applica alla seconda colonna di limitazione e così via.

Restituisce

Classe DataTable che contiene le informazioni richieste sullo schema.

Eccezioni

Il gruppo di restrizioni specificate non è valido.

Il rowset dello schema specificato non è supportato dal provider OLE DB.

-oppure-

Il parametro schema contiene un valore di DbInfoLiterals e il parametro restrictions contiene una o più restrizioni.

Esempio

L'esempio seguente restituisce un elenco di tabelle in un database.

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

Commenti

La tabella dello schema viene restituita come oggetto DataTable con lo stesso formato del set di righe dello schema OLE DB specificato dal schema parametro . Usare il parametro per filtrare le righe da restituire nell'oggetto DataTable , ad esempio specificando restrizioni per il nome della tabella, il tipo, il restrictions proprietario o lo schema. Quando si passano valori nella matrice, includere stringhe vuote o null per gli elementi della matrice che non contengono valori. Se si passa una matrice vuota a restrictions, vengono restituite tutte le righe (una per ogni tabella) nell'ordine predefinito. I valori nella matrice corrispondono all'ordine delle colonne nella tabella di origine e DataTable. Ogni elemento della matrice di restrizioni viene confrontato con il contenuto della colonna corrispondente nel set di righe dello schema. Ad esempio, il primo elemento della matrice di restrizioni viene confrontato con la prima colonna nel set di righe. Se un elemento di restrizione non è Null, vengono aggiunte solo righe dal set di righe dello schema che corrispondono esattamente al valore della restrizione.DataTable

Il OleDbConnection metodo chiama il metodo OLE DB IDBSchemaRowset::GetRowset usando regole di conversione common language runtime standard. Per altre informazioni, vedere Tipi di dati COM.

È possibile recuperare informazioni sui valori letterali usando DbInfoLiterals. In questo modo vengono fornite informazioni equivalenti alla chiamata all'interfaccia IDBInfo::GetLiteralInfo o al metodo ADO Connection.OpenSchema con la adSchemaDBInfoLiterals costante.

Si applica a

Vedi anche