Funzione SQLExecDirect
Conformità
Versione introdotta: Conformità agli standard ODBC 1.0: ISO 92
Riepilogo
SQLExecDirect esegue un'istruzione preparabile, usando i valori correnti delle variabili dell'indicatore di parametro se sono presenti parametri nell'istruzione . SQLExecDirect è il modo più rapido per inviare un'istruzione SQL per l'esecuzione monouso.
Sintassi
SQLRETURN SQLExecDirect(
SQLHSTMT StatementHandle,
SQLCHAR * StatementText,
SQLINTEGER TextLength);
Argomenti
StatementHandle
[Input] Handle di istruzione.
StatementText
[Input] Istruzione SQL da eseguire.
TextLength
[Input] Lunghezza di *StatementText in caratteri.
Valori restituiti
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_NEED_DATA, SQL_STILL_EXECUTING, SQL_ERROR, SQL_NO_DATA, SQL_INVALID_HANDLE o SQL_PARAM_DATA_AVAILABLE.
Diagnostica
Quando SQLExecDirect restituisce SQL_ERROR o SQL_SUCCESS_WITH_INFO, è possibile ottenere un valore SQLSTATE associato chiamando SQLGetDiagRec con handleType di SQL_HANDLE_STMT e handle di StatementHandle. La tabella seguente elenca i valori SQLSTATE comunemente restituiti da SQLExecDirect e ne spiega ognuno nel contesto di questa funzione. La notazione "(DM)" precede le descrizioni di SQLSTATEs restituite da Gestione driver. Il codice restituito associato a ogni valore SQLSTATE è SQL_ERROR, a meno che non sia specificato diversamente.
SQLSTATE | Errore | Descrizione |
---|---|---|
01000 | Avviso generale | Messaggio informativo specifico del driver. (La funzione restituisce SQL_SUCCESS_WITH_INFO. |
01001 | Conflitto dell'operazione di cursore | *StatementText contiene un'istruzione di aggiornamento o eliminazione posizionata e nessuna riga o più righe sono state aggiornate o eliminate. Per altre informazioni sugli aggiornamenti a più righe, vedere la descrizione del SQL_ATTR_SIMULATE_CURSOR Attributo in SQLSetStmtAttr.) (La funzione restituisce SQL_SUCCESS_WITH_INFO. |
01003 | Valore NULL eliminato nella funzione set | L'argomento StatementText conteneva una funzione set (ad esempio AVG, MAX, MIN e così via), ma non la funzione count set e i valori di argomento NULL sono stati eliminati prima dell'applicazione della funzione. (La funzione restituisce SQL_SUCCESS_WITH_INFO. |
01004 | Dati stringa, troncati a destra | I dati stringa o binari restituiti per un parametro di input/output o di output hanno comportato il troncamento di dati binari non null o non null. Se si tratta di un valore stringa, è stato troncato a destra. (La funzione restituisce SQL_SUCCESS_WITH_INFO. |
01006 | Privilegio non revocato | *StatementText contiene un'istruzione REVOKE e l'utente non dispone del privilegio specificato. (La funzione restituisce SQL_SUCCESS_WITH_INFO. |
01007 | Privilegio non concesso | *StatementText era un'istruzione GRANT e l'utente non poteva concedere il privilegio specificato. |
01S02 | Valore dell'opzione modificato | Un attributo di istruzione specificato non è valido a causa delle condizioni di lavoro dell'implementazione, pertanto è stato sostituito temporaneamente un valore simile. È possibile chiamare SQLGetStmtAttr per determinare il valore sostituito temporaneamente. Il valore sostitutivo è valido per StatementHandle fino a quando il cursore non viene chiuso, a quel punto l'attributo dell'istruzione ripristina il valore precedente. Gli attributi dell'istruzione che possono essere modificati sono: SQL_ ATTR_CONCURRENCY SQL_ ATTR_CURSOR_TYPE SQL_ ATTR_KEYSET_SIZE SQL_ ATTR_MAX_LENGTH SQL_ ATTR_MAX_ROWS SQL_ ATTR_QUERY_TIMEOUT SQL_ ATTR_SIMULATE_CURSOR (La funzione restituisce SQL_SUCCESS_WITH_INFO. |
01S07 | Troncamento frazionario | I dati restituiti per un parametro di input/output o di output sono stati troncati in modo che la parte frazionaria di un tipo di dati numerico sia stata troncata o la parte frazionaria del componente temporale di un tipo di dati time, timestamp o interval è stata troncata. (La funzione restituisce SQL_SUCCESS_WITH_INFO. |
07002 | Campo COUNT errato | Il numero di parametri specificati in SQLBindParameter è minore del numero di parametri nell'istruzione SQL contenuta in *StatementText. SQLBindParameter è stato chiamato con ParameterValuePtr impostato su un puntatore Null, StrLen_or_IndPtr non impostato su SQL_NULL_DATA o SQL_DATA_AT_EXEC e InputOutputType non è impostato su SQL_PARAM_OUTPUT, in modo che il numero di parametri specificati in SQLBindParameter sia maggiore del numero di parametri nell'istruzione SQL contenuta in *StatementText. |
07006 | Violazione dell'attributo del tipo di dati con restrizioni | Impossibile convertire il valore dei dati identificato dall'argomento ValueType in SQLBindParameter per il parametro associato nel tipo di dati identificato dall'argomento ParameterType in SQLBindParameter. Impossibile convertire il valore di dati restituito per un parametro associato come SQL_PARAM_INPUT_OUTPUT o SQL_PARAM_OUTPUT nel tipo di dati identificato dall'argomento ValueType in SQLBindParameter. Se non è stato possibile convertire i valori di dati per una o più righe ma sono state restituite una o più righe, questa funzione restituisce SQL_SUCCESS_WITH_INFO. |
07007 | Violazione del valore del parametro con restrizioni | Il tipo di parametro SQL_PARAM_INPUT_OUTPUT_STREAM viene usato solo per un parametro che invia e riceve i dati in parti. Un buffer associato all'input non è consentito per questo tipo di parametro. Questo errore si verifica quando il tipo di parametro è SQL_PARAM_INPUT_OUTPUT e quando il *StrLen_or_IndPtr specificato in SQLBindParameter non è uguale a SQL_NULL_DATA, SQL_DEFAULT_PARAM, SQL_LEN_DATA_AT_EXEC(len) o SQL_DATA_AT_EXEC. |
07S01 | Uso non valido del parametro predefinito | Un valore del parametro, impostato con SQLBindParameter, è stato SQL_DEFAULT_PARAM e il parametro corrispondente non ha un valore predefinito. |
08S01 | Errore del collegamento di comunicazione | Collegamento di comunicazione tra il driver e l'origine dati a cui è stato connesso il driver non è riuscito prima del completamento dell'elaborazione della funzione. |
21S01 | L'elenco di valori di inserimento non corrisponde all'elenco di colonne | *StatementText contiene un'istruzione INSERT e il numero di valori da inserire non corrisponde al grado della tabella derivata. |
21S02 | Il grado di tabella derivata non corrisponde all'elenco di colonne | *StatementText conteneva un'istruzione CREATE VIEW e l'elenco di colonne non qualificate (il numero di colonne specificate per la vista negli argomenti dell'identificatore di colonna dell'istruzione SQL) conteneva più nomi rispetto al numero di colonne nella tabella derivata definita dall'argomento della specifica della query dell'istruzione SQL. |
22001 | Dati stringa, troncamento destro | L'assegnazione di un carattere o di un valore binario a una colonna ha comportato il troncamento di dati di tipo carattere non vuoti o dati binari non Null. |
22002 | Variabile indicatore obbligatoria ma non fornita | I dati NULL sono stati associati a un parametro di output il cui StrLen_or_IndPtr impostato da SQLBindParameter era un puntatore Null. |
22003 | Valore numerico non compreso nell'intervallo | *StatementText contiene un'istruzione SQL che contiene un parametro numerico o un valore letterale associato e il valore ha causato il troncamento dell'intera parte del numero , anziché frazionaria, quando viene assegnata alla colonna della tabella associata. La restituzione di un valore numerico (come numerico o stringa) per uno o più parametri di input/output o output avrebbe causato il troncamento dell'intera parte (anziché frazionaria) del numero. |
22007 | Formato datetime non valido | *StatementText conteneva un'istruzione SQL contenente una struttura di data, ora o timestamp come parametro associato e il parametro era, rispettivamente, una data, un'ora o un timestamp non valido. Un parametro di input/output o di output è stato associato a una struttura di data, ora o timestamp C e un valore nel parametro restituito era, rispettivamente, una data, un'ora o un timestamp non validi. (La funzione restituisce SQL_SUCCESS_WITH_INFO. |
22008 | Overflow del campo Datetime | *StatementText contiene un'istruzione SQL che contiene un'espressione datetime che, quando calcolata, ha generato una struttura di data, ora o timestamp non valida. Un'espressione datetime calcolata per un parametro di input/output o di output ha generato una struttura C di data, ora o timestamp non valida. |
22012 | Divisione per zero | *StatementText contiene un'istruzione SQL che contiene un'espressione aritmetica che ha causato la divisione per zero. Un'espressione aritmetica calcolata per un parametro di input/output o di output ha generato una divisione per zero. |
22015 | Overflow del campo intervallo | *StatementText conteneva un parametro numerico o intervallo esatto che, quando convertito in un tipo di dati SQL intervallo, causava una perdita di cifre significative. *StatementText conteneva un parametro interval con più di un campo che, quando convertito in un tipo di dati numerico in una colonna, non aveva rappresentazione nel tipo di dati numerico. *StatementText conteneva i dati dei parametri assegnati a un tipo SQL di intervallo e non c'era alcuna rappresentazione del valore del tipo C nel tipo SQL intervallo. L'assegnazione di un parametro di input/output o di output che era un tipo SQL numerico o intervallo esatto a un tipo C intervallo ha causato una perdita di cifre significative. Quando un parametro di input/output o di output è stato assegnato a una struttura interval C, non è presente alcuna rappresentazione dei dati nella struttura dei dati interval. |
22018 | Valore carattere non valido per la specifica del cast | *StatementText conteneva un tipo C che era un valore numerico esatto o approssimativo, un tipo di dati datetime o interval, il tipo SQL della colonna era un tipo di dati carattere e il valore nella colonna non era un valore letterale valido del tipo C associato. Quando è stato restituito un parametro di input/output o di output, il tipo SQL era un tipo di dati numerico esatto o approssimativo, un valore datetime o un tipo di dati interval; il tipo C era SQL_C_CHAR; e il valore nella colonna non era un valore letterale valido del tipo SQL associato. |
22019 | Carattere di escape non valido | *StatementText contiene un'istruzione SQL che contiene un predicato LIKE con escape nella clausola WHERE e la lunghezza del carattere di escape che segue ESCAPE non è uguale a 1. |
22025 | Sequenza di escape non valida | *StatementText conteneva un'istruzione SQL che conteneva il carattere di escape "ESCAPE del valore del modello LIKE " nella clausola WHERE e il carattere che segue il carattere di escape nel valore del criterio non era uno di "%" o "_". |
23000 | Violazione del vincolo di integrità | *StatementText contiene un'istruzione SQL contenente un parametro o un valore letterale. Il valore del parametro era NULL per una colonna definita come NOT NULL nella colonna della tabella associata, per una colonna vincolata a contenere solo valori univoci è stato specificato un valore duplicato oppure è stato violato un altro vincolo di integrità. |
24000 | Stato del cursore non valido | Un cursore è stato posizionato in StatementHandle da SQLFetch o SQLFetchScroll. Questo errore viene restituito da Gestione driver se SQLFetch o SQLFetchScroll non ha restituito SQL_NO_DATA e viene restituito dal driver se SQLFetch o SQLFetchScroll ha restituito SQL_NO_DATA. Un cursore è stato aperto ma non posizionato in StatementHandle. *StatementText contiene un'istruzione di aggiornamento o eliminazione posizionata e il cursore è stato posizionato prima dell'inizio del set di risultati o dopo la fine del set di risultati. |
34000 | Nome di cursore non valido | *StatementText contiene un'istruzione di aggiornamento o eliminazione posizionata e il cursore a cui fa riferimento l'istruzione in esecuzione non è stata aperta. |
3D000 | Nome catalogo non valido | Il nome del catalogo specificato in StatementText non è valido. |
3F000 | Nome dello schema non valido | Il nome dello schema specificato in StatementText non è valido. |
40001 | Errore di serializzazione | È stato eseguito il rollback della transazione a causa di un deadlock della risorsa con un'altra transazione. |
40003 | Completamento istruzione sconosciuto | La connessione associata non è riuscita durante l'esecuzione di questa funzione e non è possibile determinare lo stato della transazione. |
42000 | Errore di sintassi o violazione di accesso | *StatementText conteneva un'istruzione SQL che non era preparabile o conteneva un errore di sintassi. L'utente non dispone dell'autorizzazione per eseguire l'istruzione SQL contenuta in *StatementText. |
42S01 | Tabella o vista di base già esistente | *StatementText contiene un'istruzione CREATE TABLE o CREATE VIEW e il nome della tabella o della vista specificato esiste già. |
42S02 | Tabella o vista di base non trovata | *StatementText contiene un'istruzione DROP TABLE o DROP VIEW e il nome della tabella o della vista specificato non esisteva. *StatementText contiene un'istruzione ALTER TABLE e il nome della tabella specificato non esisteva. *StatementText contiene un'istruzione CREATE VIEW e un nome di tabella o vista definito dalla specifica della query non esisteva. *StatementText contiene un'istruzione CREATE INDEX e il nome della tabella specificato non esiste. *StatementText contiene un'istruzione GRANT o REVOKE e il nome della tabella o della vista specificato non esiste. *StatementText contiene un'istruzione SELECT e un nome di tabella o vista specificato non esisteva. *StatementText conteneva un'istruzione DELETE, INSERT o UPDATE e il nome della tabella specificato non esisteva. *StatementText contiene un'istruzione CREATE TABLE e una tabella specificata in un vincolo (che fa riferimento a una tabella diversa da quella creata) non esiste. *StatementText conteneva un'istruzione CREATE SCHEMA e un nome di tabella o vista specificato non esisteva. |
42S11 | Indice già esistente | *StatementText contiene un'istruzione CREATE INDEX e il nome di indice specificato esiste già. *StatementText contiene un'istruzione CREATE SCHEMA e il nome di indice specificato esiste già. |
42S12 | Indice non trovato | *StatementText conteneva un'istruzione DROP INDEX e il nome dell'indice specificato non esisteva. |
42S21 | Colonna già esistente | *StatementText contiene un'istruzione ALTER TABLE e la colonna specificata nella clausola ADD non è univoca o identifica una colonna esistente nella tabella di base. |
42S22 | Colonna non trovata | *StatementText contiene un'istruzione CREATE INDEX e uno o più nomi di colonna specificati nell'elenco di colonne non esistevano. *StatementText conteneva un'istruzione GRANT o REVOKE e un nome di colonna specificato non esisteva. *StatementText conteneva un'istruzione SELECT, DELETE, INSERT o UPDATE e un nome di colonna specificato non esisteva. *StatementText conteneva un'istruzione CREATE TABLE e una colonna specificata in un vincolo (facendo riferimento a una tabella diversa da quella creata) non esisteva. *StatementText conteneva un'istruzione CREATE SCHEMA e un nome di colonna specificato non esisteva. |
44000 | Violazione della clausola WITH CHECK OPTION | L'argomento StatementText contiene un'istruzione INSERT eseguita in una tabella visualizzata o in una tabella derivata dalla tabella visualizzata creata specificando WITH CHECK OPTION, in modo che una o più righe interessate dall'istruzione INSERT non siano più presenti nella tabella visualizzata. L'argomento StatementText contiene un'istruzione UPDATE eseguita in una tabella visualizzata o in una tabella derivata dalla tabella visualizzata creata specificando WITH CHECK OPTION, in modo che una o più righe interessate dall'istruzione UPDATE non siano più presenti nella tabella visualizzata. |
HY000 | Errore generale: | Si è verificato un errore per il quale non è stato specificato SQLSTATE e per il quale non è stato definito alcun SQLSTATE specifico dell'implementazione. Il messaggio di errore restituito da SQLGetDiagRec nel buffer *MessageText descrive l'errore e la relativa causa. |
HY001 | Errore di allocazione della memoria | Il driver non è riuscito ad allocare memoria necessaria per supportare l'esecuzione o il completamento della funzione. |
HY008 | Operazione annullata | L'elaborazione asincrona è stata abilitata per StatementHandle. La funzione è stata chiamata e prima di completare l'esecuzione, SQLCancel o SQLCancelHandle è stata chiamata in StatementHandle. La funzione è stata quindi chiamata di nuovo in StatementHandle. La funzione è stata chiamata e prima del completamento dell'esecuzione, SQLCancel o SQLCancelHandle è stato chiamato su StatementHandle da un thread diverso in un'applicazione multithread. |
HY009 | Uso non valido del puntatore Null | (DM) *StatementText era un puntatore Null. |
HY010 | Errore della sequenza di funzioni | (DM) È stata chiamata una funzione in esecuzione asincrona per l'handle di connessione associato a StatementHandle. Questa funzione asincrona era ancora in esecuzione quando è stata chiamata la funzione SQLExecDirect . (DM) SQLExecute, SQLExecDirect o SQLMoreResults è stato chiamato per StatementHandle e restituito SQL_PARAM_DATA_AVAILABLE. Questa funzione è stata chiamata prima del recupero dei dati per tutti i parametri trasmessi. (DM) Una funzione in esecuzione asincrona (non questa) è stata chiamata per StatementHandle ed è ancora in esecuzione quando questa funzione è stata chiamata. (DM) SQLExecute, SQLExecDirect, SQLBulkOperations o SQLSetPos è stato chiamato per StatementHandle e restituito SQL_NEED_DATA. Questa funzione è stata chiamata prima dell'invio dei dati per tutti i parametri o le colonne data-at-execution. |
HY013 | Errore di gestione della memoria | Impossibile elaborare la chiamata di funzione perché non è stato possibile accedere agli oggetti di memoria sottostanti, probabilmente a causa di condizioni di memoria insufficiente. |
HY090 | Lunghezza della stringa o del buffer non valida | (DM) L'argomento TextLength è minore o uguale a 0, ma non uguale a SQL_NTS. Un valore del parametro, impostato con SQLBindParameter, è un puntatore Null e il valore della lunghezza del parametro non è 0, SQL_NULL_DATA, SQL_DATA_AT_EXEC, SQL_DEFAULT_PARAM o minore o uguale a SQL_LEN_DATA_AT_EXEC_OFFSET. Un valore del parametro, impostato con SQLBindParameter, non era un puntatore Null, il tipo di dati C era SQL_C_BINARY o SQL_C_CHAR e il valore della lunghezza del parametro era minore di 0 ma non era SQL_NTS, SQL_NULL_DATA, SQL_DATA_AT_EXEC, SQL_DEFAULT_PARAM o minore o uguale a SQL_LEN_DATA_AT_EXEC_OFFSET. Un valore di lunghezza del parametro associato a SQLBindParameter è stato impostato su SQL_DATA_AT_EXEC; il tipo SQL era SQL_LONGVARCHAR, SQL_LONGVARBINARY o un tipo di dati specifico dell'origine dati lungo e il tipo di informazioni SQL_NEED_LONG_DATA_LEN in SQLGetInfo era "Y". |
HY105 | Tipo di parametro non valido | Il valore specificato per l'argomento InputOutputType in SQLBindParameter è stato SQL_PARAM_OUTPUT e il parametro era un parametro di input. |
HY109 | Posizione del cursore non valida | *StatementText contiene un'istruzione di aggiornamento o eliminazione posizionata e il cursore è stato posizionato (da SQLSetPos o SQLFetchScroll) in una riga che è stata eliminata o che non è stato possibile recuperare. |
HY117 | La connessione viene sospesa a causa dello stato sconosciuto della transazione. Sono consentite solo funzioni disconnesse e di sola lettura. | (DM) Per altre informazioni sullo stato sospeso, vedere Funzione SQLEndTran. |
HYC00 | Funzionalità facoltativa non implementata | La combinazione delle impostazioni correnti degli attributi delle istruzioni SQL_ATTR_CONCURRENCY e SQL_ATTR_CURSOR_TYPE non è supportata dal driver o dall'origine dati. L'attributo di istruzione SQL_ATTR_USE_BOOKMARKS è stato impostato su SQL_UB_VARIABLE e l'attributo dell'istruzione SQL_ATTR_CURSOR_TYPE è stato impostato su un tipo di cursore per cui il driver non supporta i segnalibri. |
HYT00 | Timeout scaduto | Periodo di timeout della query scaduto prima che l'origine dati restituisca il set di risultati. Il periodo di timeout viene impostato tramite SQLSetStmtAttr, SQL_ATTR_QUERY_TIMEOUT. |
HYT01 | Il timeout della connessione è scaduto | Periodo di timeout della connessione scaduto prima che l'origine dati rispondesse alla richiesta. Il periodo di timeout della connessione viene impostato tramite SQLSetConnectAttr, SQL_ATTR_CONNECTION_TIMEOUT. |
IM001 | Il driver non supporta questa funzione | (DM) Il driver associato a StatementHandle non supporta la funzione. |
IM017 | Il polling è disabilitato in modalità di notifica asincrona | Ogni volta che viene usato il modello di notifica, il polling è disabilitato. |
IM018 | SQLCompleteAsync non è stato chiamato per completare l'operazione asincrona precedente su questo handle. | Se la chiamata di funzione precedente sull'handle restituisce SQL_STILL_EXECUTING e se la modalità di notifica è abilitata, è necessario chiamare SQLCompleteAsync sull'handle per eseguire la post-elaborazione e completare l'operazione. |
Commenti
L'applicazione chiama SQLExecDirect per inviare un'istruzione SQL all'origine dati. Per altre informazioni sull'esecuzione diretta, vedere Esecuzione diretta. Il driver modifica l'istruzione in modo da usare il formato SQL usato dall'origine dati e quindi lo invia all'origine dati. In particolare, il driver modifica le sequenze di escape usate per definire determinate funzionalità in SQL. Per la sintassi delle sequenze di escape, vedere Sequenze di escape in ODBC.
L'applicazione può includere uno o più marcatori di parametro nell'istruzione SQL. Per includere un marcatore di parametro, l'applicazione incorpora un punto interrogativo (?) nell'istruzione SQL nella posizione appropriata. Per informazioni sui parametri, vedere Parametri delle istruzioni.
Se l'istruzione SQL è un'istruzione SELECT e se l'applicazione denominata SQLSetCursorName per associare un cursore a un'istruzione, il driver usa il cursore specificato. In caso contrario, il driver genera un nome di cursore.
Se l'origine dati è in modalità di commit manuale (che richiede l'avvio esplicito della transazione) e una transazione non è già stata avviata, il driver avvia una transazione prima di inviare l'istruzione SQL. Per altre informazioni, vedere Modalità di commit manuale.
Se un'applicazione usa SQLExecDirect per inviare un'istruzione COMMIT o ROLLBACK , non sarà interoperabile tra i prodotti DBMS. Per eseguire il commit o il rollback di una transazione, un'applicazione chiama SQLEndTran.
Se SQLExecDirect rileva un parametro data-at-execution, restituisce SQL_NEED_DATA. L'applicazione invia i dati usando SQLParamData e SQLPutData. Vedere SQLBindParameter, SQLParamData, SQLPutData e Invio di dati lunghi.
Se SQLExecDirect esegue un'istruzione di aggiornamento, inserimento o eliminazione ricercata che non influisce sulle righe nell'origine dati, la chiamata a SQLExecDirect restituisce SQL_NO_DATA.
Se il valore dell'attributo dell'istruzione SQL_ATTR_PARAMSET_SIZE è maggiore di 1 e l'istruzione SQL contiene almeno un marcatore di parametro, SQLExecDirect eseguirà l'istruzione SQL una volta per ogni set di valori di parametro delle matrici a cui punta l'argomento ParameterValuePointer nella chiamata a SQLBindParameter. Per altre informazioni, vedere Matrici di valori dei parametri.
Se i segnalibri sono attivati e viene eseguita una query che non supporta i segnalibri, il driver deve tentare di comerare l'ambiente in uno che supporti i segnalibri modificando un valore di attributo e restituendo SQLSTATE 01S02 (valore opzione modificato). Se l'attributo non può essere modificato, il driver deve restituire SQLSTATE HY024 (valore attributo non valido).
Nota
Quando si usa il pool di connessioni, un'applicazione non deve eseguire istruzioni SQL che modificano il database o il contesto del database, ad esempio l'istruzione USE database in SQL Server, che modifica il catalogo usato da un'origine dati.
Esempio di codice
Vedere SQLBindCol, SQLGetData e Programma ODBC di esempio.
Funzioni correlate
Per informazioni su | Vedere |
---|---|
Associazione di un buffer a una colonna in un set di risultati | Funzione SQLBindCol |
Annullamento dell'elaborazione delle istruzioni | Funzione SQLCancel |
Esecuzione di un'operazione di commit o rollback | Funzione SQLEndTran |
Esecuzione di un'istruzione SQL preparata | Funzione SQLExecute |
Recupero di più righe di dati | Funzione SQLFetch |
Recupero di un blocco di dati o scorrimento di un set di risultati | Funzione SQLFetchScroll |
Restituzione di un nome di cursore | Funzione SQLGetCursorName |
Recupero di una parte o di una colonna di dati | Funzione SQLGetData |
Restituzione del parametro successivo per l'invio di dati per | Funzione SQLParamData |
Preparazione di un'istruzione per l'esecuzione | Funzione SQLPrepare |
Invio dei dati dei parametri in fase di esecuzione | Funzione SQLPutData |
Impostazione di un nome di cursore | Funzione SQLSetCursorName |
Impostazione di un attributo di istruzione | Funzione SQLSetStmtAttr |