Condividi tramite


Informazioni di riferimento sulle API ODBC

Si applica a:SQL Server, Database SQL di Azure e Istanza gestita di SQL di Azure.

L'API ODBC fornisce un set standard di funzioni per la connessione alle origini dati, l'esecuzione di istruzioni SQL e il recupero dei risultati. Ogni funzione è una funzione del linguaggio di programmazione C con descrizioni che includono scopo, versione ODBC, sintassi, argomenti, valori restituiti, diagnostica ed esempi di codice.

Il livello di conformità dell'interfaccia della riga di comando standard può essere uno dei seguenti: ISO 92, Open Group, ODBC o Deprecato. Una funzione contrassegnata come conforme a ISO 92 viene visualizzata anche in Open Group versione 1, perché Open Group è un superset puro di ISO 92. In ODBC 3.x viene visualizzata anche una funzione contrassegnata come conforme a Open Group, perché ODBC 3.x è un superset puro di Open Group versione 1. Una funzione contrassegnata come conforme a ODBC non viene visualizzata in nessuno dei due standard. Una funzione contrassegnata come deprecata è stata deprecata in ODBC 3.x.

La descrizione della funzione SQLGetDiagField descrive come gestire le informazioni di diagnostica. Il testo associato ai valori SQLSTATE fornisce una descrizione della condizione, ma non prevede testo specifico.

Annotazioni

Per informazioni specifiche del driver sulle funzioni ODBC, vedere la sezione relativa al driver.

Gestire l'allocazione e la gestione

Queste funzioni allocano e liberano handle per ambienti, connessioni, istruzioni e descrittori. Gli handle sono il meccanismo principale per tenere traccia dello stato nelle applicazioni ODBC.

Funzione Description
SQLAllocHandle Alloca un handle di ambiente, connessione, istruzione o descrittore. Questa è la funzione ODBC 3.x che sostituisce le funzioni di allocazione deprecate.
SQLFreeHandle Libera un ambiente, una connessione, un'istruzione o un handle descrittore e rilascia le risorse associate.
SQLAllocConnect Alloca un handle di connessione. Deprecato in ODBC 3.x; usare SQLAllocHandle invece .
SQLAllocEnv Alloca un handle di ambiente. Deprecato in ODBC 3.x; usare SQLAllocHandle invece .
SQLAllocStmt Alloca un handle di istruzione. Deprecato in ODBC 3.x; usare SQLAllocHandle invece .
SQLFreeConnect Libera un handle di connessione. Deprecato in ODBC 3.x; usare SQLFreeHandle invece .
SQLFreeEnv Libera un handle di ambiente. Deprecato in ODBC 3.x; usare SQLFreeHandle invece .
SQLFreeStmt Arresta l'elaborazione delle istruzioni, chiude i cursori associati, elimina i risultati in sospeso e, facoltativamente, libera le risorse associate a un handle di istruzione.

Funzioni di connessione

Queste funzioni stabiliscono e gestiscono le connessioni alle origini dati. Supportano vari metodi di connessione, tra cui connessioni standard, dialoghi specifici del driver e esplorazione iterativa.

Funzione Description
SQLConnect Stabilisce una connessione a un'origine dati usando un nome origine dati, un ID utente e una password.
SQLDriverConnect Stabilisce una connessione usando una stringa di connessione. Supporta finestre di dialogo specifiche del driver per informazioni aggiuntive sulla connessione.
SQLBrowseConnect Supporta un metodo iterativo per individuare ed enumerare gli attributi necessari per connettersi a un'origine dati.
Sqldisconnect Chiude una connessione a un'origine dati e rilascia le risorse associate.
SQLDataSources Restituisce un elenco di origini dati disponibili. Chiamato su Gestione driver, non un driver specifico.
SQLDrivers Restituisce un elenco di driver installati e dei relativi attributi. Chiamato in Gestione driver.

Preparazione ed esecuzione delle istruzioni

Queste funzioni preparano ed eseguono istruzioni SQL. ODBC supporta sia l'esecuzione diretta che l'esecuzione preparata, offrendo prestazioni migliori per le istruzioni eseguite ripetutamente.

Funzione Description
Sqlprepare Prepara un'istruzione SQL per un'esecuzione successiva. L'origine dati compila e ottimizza l'istruzione .
SQLExecute Esegue un'istruzione preparata. Chiamare prima di SQLPrepare chiamare questa funzione.
Sqlexecdirect Prepara ed esegue un'istruzione SQL in una singola chiamata. Usare per le istruzioni eseguite una sola volta.
SQLNativeSql Restituisce la stringa SQL modificata dal driver, che mostra come il driver converte la sintassi SQL ODBC.
SQLCancel Annulla l'elaborazione in un'istruzione . Può annullare una funzione in esecuzione asincrona o una funzione in esecuzione in un altro thread.
SQLCancelHandle Annulla l'elaborazione su una connessione o un'istruzione . Più flessibile rispetto SQLCancel all'annullamento delle funzioni di connessione.
SQLCompleteAsync Determina quando viene completata una funzione asincrona. Usato con l'elaborazione asincrona basata su notifica.

Associazione di parametri

Queste funzioni associano le variabili dell'applicazione ai marcatori di parametro nelle istruzioni SQL. I parametri abilitano i valori dinamici nelle istruzioni preparate.

Funzione Description
SQLBindParameter Associa una variabile dell'applicazione a un marcatore di parametro in un'istruzione SQL. Supporta parametri di input, output e input/output.
SQLNumParams Restituisce il numero di parametri in un'istruzione SQL.
Sqldescribeparam Restituisce la descrizione di un marcatore di parametro, inclusi il tipo di dati, le dimensioni e la precisione.
Sqlparamdata Usato con SQLPutData per fornire i dati dei parametri in fase di esecuzione. Restituisce il parametro che richiede dati.
SQLPutData Invia parte o tutto un valore di dati per un parametro in fase di esecuzione. Supporta dati di grandi dimensioni in blocchi.
SQLSetParam Associa un parametro. Deprecato in ODBC 3.x; usare SQLBindParameter invece .
SQLParamOptions Imposta le opzioni per le matrici di parametri. Deprecato in ODBC 3.x; usare invece gli attributi dell'istruzione.

Associazione e recupero del set di risultati

Queste funzioni associano i buffer dell'applicazione alle colonne del set di risultati e recuperano i dati dai risultati della query.

Funzione Description
SQLBindCol Associa una variabile dell'applicazione a una colonna del set di risultati per le operazioni di recupero successive.
SQLFetch Recupera il set di righe successivo di dati dal set di risultati in colonne associate.
SQLFetchScroll Recupera il set di righe specificato da un set di risultati. Supporta lo scorrimento fino alla prima, all'ultima, successiva, alle posizioni precedenti, assolute e relative.
SQLGetData Recupera i dati per una singola colonna dopo SQLFetch o SQLFetchScroll. Utile per dati di grandi dimensioni o colonne non associate.
Sqlextendedfetch Recupera il set di righe di dati specificato. Deprecato in ODBC 3.x; usare SQLFetchScroll invece .
SQLMoreResults Determina se sono disponibili più risultati in un'istruzione e passa al set di risultati successivo.
SQLRowCount Restituisce il numero di righe interessate da un'istruzione UPDATE, INSERT o DELETE.

Operazioni del cursore

Queste funzioni gestiscono il comportamento del cursore, il posizionamento e le operazioni bulk sui set di righe.

Funzione Description
SQLSetPos Imposta la posizione del cursore all'interno di un set di righe e consente alle applicazioni di aggiornare, aggiornare o eliminare dati in tale posizione.
Sqlbulkoperations Esegue operazioni di inserimento, aggiornamento, eliminazione o recupero bulk in set di righe.
SQLCloseCursor Chiude un cursore aperto in un'istruzione e rimuove i risultati in sospeso.
SQLGetCursorName Restituisce il nome del cursore associato a un'istruzione .
SQLSetCursorName Specifica un nome di cursore per le istruzioni UPDATE e DELETE posizionate.
SQLSetScrollOptions Imposta le opzioni per il comportamento del cursore. Deprecato in ODBC 3.x; usare invece gli attributi dell'istruzione.

Funzioni del catalogo

Queste funzioni recuperano i metadati relativi alla struttura del database, incluse tabelle, colonne, indici, privilegi e stored procedure.

Funzione Description
SqlTables Restituisce un elenco di nomi di tabella nell'origine dati. Supporta il filtro in base al catalogo, allo schema e al tipo di tabella.
Sqlcolumns Restituisce un elenco di nomi di colonna e i relativi attributi per le tabelle specificate.
SQLPrimaryKeys Restituisce le colonne che costituiscono la chiave primaria per una tabella.
SQLForeignKeys Restituisce chiavi esterne in una tabella o chiavi esterne in altre tabelle che fanno riferimento alla chiave primaria di una tabella.
SQLStatistics Restituisce statistiche su una tabella e un elenco di indici associati.
SQLSpecialColumns Restituisce colonne che identificano in modo univoco una riga o colonne che vengono aggiornate automaticamente quando viene aggiornato qualsiasi valore nella riga.
SQLColumnPrivileges Restituisce un elenco di colonne e privilegi associati per una tabella.
SQLTablePrivileges Restituisce un elenco di tabelle e i privilegi associati a ogni tabella.
SQLProcedures Restituisce un elenco di nomi di stored procedure nell'origine dati.
Sqlprocedurecolumns Restituisce l'elenco di parametri e colonne di input/output nel set di risultati per le procedure specificate.
SQLGetTypeInfo Restituisce informazioni sui tipi di dati supportati dall'origine dati.

Operazioni del descrittore

Queste funzioni ottengono e impostano i valori del descrittore. I descrittori contengono metadati relativi ai parametri e alle colonne del set di risultati.

Funzione Description
SQLGetDescField Restituisce il valore di un singolo campo di un record descrittore.
SQLGetDescRec Restituisce più campi di un record descrittore in una singola chiamata.
SQLSetDescField Imposta il valore di un singolo campo di un record descrittore.
SQLSetDescRec Imposta più campi di un record descrittore in una singola chiamata.
SQLCopyDesc Copia le informazioni del descrittore da un handle descrittore a un altro.

Funzioni degli attributi

Queste funzioni ottengono e impostano attributi per ambienti, connessioni e istruzioni. Gli attributi controllano vari aspetti del comportamento ODBC.

Funzione Description
SQLSetEnvAttr Imposta un attributo di ambiente che influisce su tutte le connessioni in tale ambiente.
SQLGetEnvAttr Restituisce il valore di un attributo di ambiente.
SQLSetConnectAttr Imposta un attributo di connessione che influisce sulla connessione e sulle istruzioni.
SQLGetConnectAttr Restituisce il valore di un attributo di connessione.
SQLSetStmtAttr Imposta un attributo di istruzione. Include le impostazioni del cursore, del timeout delle query e dei parametri.
SQLGetStmtAttr Restituisce il valore di un attributo di istruzione.
SQLSetConnectOption Imposta un'opzione di connessione. Deprecato in ODBC 3.x; usare SQLSetConnectAttr invece .
SQLGetConnectOption Restituisce il valore di un'opzione di connessione. Deprecato in ODBC 3.x; usare SQLGetConnectAttr invece .
SQLSetStmtOption Imposta un'opzione di istruzione. Deprecato in ODBC 3.x; usare SQLSetStmtAttr invece .
SQLGetStmtOption Restituisce il valore di un'opzione di istruzione. Deprecato in ODBC 3.x; usare SQLGetStmtAttr invece .

Funzioni di diagnostica e informazioni

Queste funzioni recuperano informazioni di diagnostica, messaggi di errore, funzionalità del driver e informazioni sull'origine dati.

Funzione Description
SQLGetDiagField Restituisce il valore di un campo in un record di diagnostica contenente informazioni su errore, avviso e stato.
Sqlgetdiagrec Restituisce diversi campi di uso comune di un record di diagnostica, tra cui SQLSTATE, codice di errore nativo e testo del messaggio.
Sqlerror Restituisce informazioni sull'errore. Deprecato in ODBC 3.x; usare SQLGetDiagRec invece .
SQLGetFunctions Restituisce informazioni su se un driver supporta una funzione ODBC specifica.
Sqlgetinfo Restituisce informazioni generali sul driver e sull'origine dati, incluse le funzionalità e le funzionalità supportate.

Metadati del set di risultati

Queste funzioni restituiscono informazioni sulla struttura dei set di risultati.

Funzione Description
SQLNumResultCols Restituisce il numero di colonne in un set di risultati.
Sqldescribecol Restituisce il nome della colonna, il tipo di dati, la precisione, la scala e il supporto dei valori Null per una colonna del set di risultati.
SQLColAttribute Restituisce informazioni sul descrittore per una colonna in un set di risultati. Più flessibile di SQLDescribeCol.
SQLColAttributes Restituisce gli attributi per una colonna. Deprecato in ODBC 3.x; usare SQLColAttribute invece .

Gestione delle transazioni

Queste funzioni gestiscono i limiti delle transazioni, controllando quando viene eseguito il commit o il rollback delle modifiche.

Funzione Description
SQLEndTran Esegue il commit o il rollback di una transazione. Può essere applicato a tutte le connessioni in un ambiente o a una singola connessione.
SQLTransact Esegue il commit o il rollback di una transazione. Deprecato in ODBC 3.x; usare SQLEndTran invece .