CDaoDatabase::Execute

void Execute (LPCTSTR LpszSQL, Int nOptions = 0);
Werfen Sie (CDaoException, CMemoryException);

Parameter

lpszSQL

Zeiger auf eine Null-terminierte Zeichenfolge, einen gültigen SQL-Befehl ausführen.

nOptions

Eine Ganzzahl, die Optionen, die im Zusammenhang mit der Integrität der Abfrage angibt. Der bitweisen OR-Operator (||) können Sie eine der folgenden Konstanten kombinieren (vorausgesetzt die Kombination sinnvoll ist — Sie würde zum Beispiel nicht DbInconsistent mit DbConsistentkombinieren):

Hinweis&Nbsp;  Wenn DbInconsistent und DbConsistent enthalten sind oder nicht enthalten ist, ist das Ergebnis der Standardwert. Eine Erläuterung dieser Konstanten finden Sie im Thema "Execute-Methode" in der DAO-Hilfe.

Bemerkungen

Rufen Sie diese Memberfunktion um eine Aktionsabfrage ausführen oder Ausführen einer SQL-Anweisung in der Datenbank. Execute funktioniert nur für Aktionsabfragen und SQL Pass-Through-Abfragen, die keine Ergebnisse zurückgeben. Es funktioniert nicht für select-Abfragen, die Datensätze zurückgeben.

Eine Definition und Informationen zu Aktionsabfragen finden Sie unter die Themen "Aktionsabfrage" und "Execute-Methode" in der DAO-Hilfe.

Tipp&Nbsp;  Da eine syntaktisch korrekte SQL-Anweisung und die richtigen Berechtigungen, wird die Execute -Memberfunktion nicht fehl, selbst wenn keine einzelne Zeile geändert oder gelöscht werden kann. Daher verwenden Sie immer die Option DbFailOnError , wenn mithilfe der Execute -Memberfunktion führen Sie ein Update oder Abfrage löschen. Diese Option bewirkt, dass MFC eine Ausnahme des Typs CDaoException ausgelöst und Rollback aller erfolgreiche Änderungen, wenn eines der betroffenen Datensätze gesperrt werden und kann nicht aktualisiert oder gelöscht werden. Beachten Sie, dass Sie immer GetRecordsAffected zu sehen, wie viele Datensätze betroffen waren aufrufen können.

Rufen Sie die GetRecordsAffected -Memberfunktion des Database-Objekts die Anzahl der von der letzten Execute -Methodenaufruf betroffenen Datensätze zu bestimmen. Beispielsweise gibt GetRecordsAffected Informationen über die Anzahl der Datensätze gelöscht, aktualisiert oder eingefügt werden, wenn Sie eine Aktionsabfrage ausführen. Die zurückgegebene Anzahl reflektiert nicht Änderungen in verknüpften Tabellen, wenn Cascade aktualisiert oder löscht wirksam sind.

Execute gibt eine Recordset nicht zurück. Verwenden Execute auf einer Abfrage, die Datensätze auswählt wird MFC eine Ausnahme des Typs CDaoExceptionausgelöst. (Es ist keine Memberfunktion ExecuteSQL analog zu CDatabase:: ExecuteSQL.)

Weitere Informationen zum Verwenden der Member-Funktion Ausführen , finden Sie im Artikel DAO-Querydef: Verwenden von Querydefs im Visual C++ Programmer's Guide.

CDaoDatabase ÜbersichtMember der Klasse | Hierarchiediagramm

Index