Condividi tramite


Determinazione delle caratteristiche di un set di risultati (ODBC)

Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Piattaforma di strumenti analitici (PDW)

I metadati sono dati che descrivono altri dati. I metadati dei set di risultati, ad esempio, descrivono le caratteristiche di un set di risultati, ad esempio il numero di colonne nel set di risultati, i tipi di dati di tali colonne, i nomi, la precisione e il supporto di valori Null.

ODBC fornisce metadati alle applicazioni tramite le funzioni API di catalogo. Il driver ODBC di SQL Server Native Client implementa molte delle funzioni del catalogo API ODBC come chiamate a una procedura di catalogo di SQL Server corrispondente.

Le applicazioni richiedono metadati per la maggior parte dei risultati delle delle operazioni set. Per esempio, l'applicazione utilizza il tipo di dati di una colonna per determinare che tipo di variabile associare a quella colonna. L'applicazione utilizza la lunghezza in byte di una colonna di tipo carattere per determinare lo spazio necessario per visualizzare dati dalla colonna. Il modo in cui un'applicazione determina i metadati per una colonna dipende dal tipo di applicazione.

Le applicazioni verticali utilizzano in genere tabelle predefinite ed eseguono operazioni predefinite in tali tabelle. Poiché i metadati dei set di risultati per tali applicazioni vengono definiti persino prima che l'applicazione sia scritta e sono controllati dallo sviluppatore, possono essere specificati a livello di codice nell'applicazione. Se, per esempio, se una colonna ID ordine viene definita come intero a 4 byte nell'origine dati, l'applicazione associare in qualsiasi momento un intero a 4 byte alla colonna. Quando i metadati sono hardcoded nell'applicazione, una modifica apportata alle tabelle utilizzate dall'applicazione comporta, in genere, una modifica al codice dell'applicazione.

Nelle applicazioni generiche, in particolare nelle applicazioni che supportano query ad hoc, i metadati dei set di risultati creati non sono in genere noti fino alla fase di esecuzione.

Per determinare le caratteristiche di un set di risultati, un'applicazione può chiamare le funzioni seguenti:

Un'applicazione progettata correttamente viene scritta presupponendo che il set di risultati non sia noto e utilizza le informazioni restituite da tali funzioni per associare le colonne nel set di risultati. Un'applicazione può chiamare tali funzioni in qualsiasi momento in seguito alla preparazione o all'esecuzione di un'istruzione. Tuttavia, per ottenere prestazioni ottimali, un'applicazione deve chiamare SQLColAttribute, SQLDescribeCol e SQLNumResultCols dopo l'esecuzione di un'istruzione.

È possibile disporre di più chiamate simultanee per i metadati. Le procedure di catalogo di sistema sottostanti alle implementazioni delle API di catalogo ODBC possono essere chiamate dal driver ODBC mentre utilizza cursori del server statici. In questo modo, le applicazioni possono elaborare simultaneamente più chiamate alle funzioni di catalogo ODBC.

Se un'applicazione utilizza un set specifico di metadati più volte, potrà utilizzare in modo proficuo la memorizzazione nella cache delle informazioni nelle variabili private quando tali informazioni vengono ottenute per la prima volta. In questo modo è possibile evitare chiamate alle funzioni di catalogo ODBC per le stesse informazioni, evitando in tal modo l'esecuzione di round trip al server da parte del driver.

Vedi anche

Risultati dell'elaborazione (ODBC)