CDaoDatabase::Execute
Chiamare la funzione membro per eseguire una query di comando o per eseguire un'istruzione SQL nel database.
void Execute(
LPCTSTR lpszSQL,
int nOptions = dbFailOnError
);
Parametri
lpszSQL
Puntatore a una stringa con terminazione null che contiene un comando SQL valido eseguire.nOptions
Un intero che specifica le opzioni relative all'integrità della query.È possibile utilizzare l'operatore OR bit per bit**|**) per combinare uno dei seguenti costanti (si specifica la combinazione significativo, ad esempio non combinereste dbInconsistent con dbConsistent):dbDenyWrite rifiutare l'autorizzazione in scrittura agli altri utenti.
Aggiornamenti incoerenti ( ) predefiniti didbInconsistent.
Aggiornamenti coerenti didbConsistent.
Pass-through didbSQLPassThrough SQL.Nell'istruzione SQL a essere passato a un'origine dati ODBC per l'elaborazione.
dbFailOnError annullare gli aggiornamenti se si verifica un errore.
dbSeeChanges generato un errore di runtime se un altro utente sta modificando i dati modificati.
[!NOTA]
Se è dbInconsistent che dbConsistent sono inclusi oppure se non è incluso, il risultato è l'impostazione predefinita.Per una spiegazione di queste costanti, vedere l'argomento "metodo Execute" nella Guida di DAO.
Note
Funzionamento diExecute solo per le query o query pass-through SQL di azione che non restituisce risultati.Non funziona per le query select, che restituiscono record.
Per una definizione e le informazioni sulle query di azione, vedere gli argomenti "query di comando" e "metodo Execute" nella Guida di DAO.
Suggerimento |
---|
Fornita un'istruzione SQL sintatticamente corretta e le autorizzazioni appropriate, la funzione membro Execute non riuscirà anche se non una singola riga può essere modificato o eliminato.Utilizzare pertanto, sempre l'opzione dbFailOnError quando si utilizza la funzione membro Execute eseguire un aggiornamento o una query di eliminazione.Questa opzione comporta MFC a generare un'eccezione di tipo CDaoException e ripristinerà soddisfatte tutte le modifiche se i record modificati vengono bloccate e non possono essere aggiornati o eliminati.Si noti che è possibile chiamare sempre GetRecordsAffected per verificare quanti record sono stati interessati. |
Chiamare la funzione membro GetRecordsAffected di oggetti di database per determinare il numero di record sulla chiamata Execute più recente.Ad esempio, GetRecordsAffected restituisce informazioni sul numero di record eliminato, aggiornati, inseriti o quando esegue una query di comando.Il valore restituito non rifletterà le modifiche in tabelle correlate quando la sovrapposizione aggiorna o elimina attive.
Execute non restituisce un recordset.Utilizzando Execute su una query che seleziona le cause MFC di record per generare un'eccezione di tipo CDaoException.(Nessuna funzione membro ExecuteSQL analoga a CDatabase::ExecuteSQL).
Requisiti
Header: afxdao.h