CCommand::Open

Führt den Befehl aus und bindet optional.

HRESULT Open(
   const CSession& session,
   LPCWSTR wszCommand,
   DBPROPSET *pPropSet = NULL,
   DBROWCOUNT* pRowsAffected = NULL,
   REFGUID guidCommand = DBGUID_DEFAULT,
   bool bBind = true,
   ULONG ulPropSets = 0
) throw( );
HRESULT Open(
   const CSession& session,
   LPCSTR szCommand,
   DBPROPSET *pPropSet = NULL,
   DBROWCOUNT* pRowsAffected = NULL,
   REFGUID guidCommand = DBGUID_DEFAULT,
   bool bBind = true,
   ULONG ulPropSets = 0
) throw( );
HRESULT Open(
   const CSession& session,
   INT szCommand = NULL,
   DBPROPSET *pPropSet = NULL,
   DBROWCOUNT* pRowsAffected = NULL,
   REFGUID guidCommand = DBGUID_DEFAULT,
   bool bBind = true,
   ULONG ulPropSets = 0
) throw( );
HRESULT Open(
   DBPROPSET *pPropSet = NULL,
   DBROWCOUNT* pRowsAffected = NULL,
   bool bBind = true,
   ULONG ulPropSets = 0
) throw( );

Parameter

  • session
    [in] in der die Sitzung, für das der Befehl ausgeführt wird.

  • wszCommand
    [in] Der Befehl auszuführen, übergeben als Unicode-Zeichenfolge.Kann NULL, wenn es CAccessor verwendet. In diesem Fall wird der Befehl aus dem Wert abgerufen wird, der dem DEFINE_COMMAND Makro übergeben wird.Weitere Informationen finden Sie unter ICommand::Execute in der OLE DB-Programmierreferenz.

  • szCommand
    [in] wszCommand identisch nimmt der Ausnahme, dass dieser Parameter eine ANSI-Befehlszeichenfolge.Das vierte Formular dieser Methode kann einen NULL-Wert akzeptieren.Weitere Informationen finden Sie im Abschnitt "Hinweise" weiter unten in diesem Thema.

  • pPropSet
    [in] Ein Zeiger auf ein Array DBPROPSET-Strukturen, die die festzulegenden Eigenschaften und Werte enthalten.Weitere Informationen finden Sie unter Eigenschaftensätze und Eigenschaftengruppen in der OLE DB Programmer's Reference in Windows SDK.

  • pRowsAffected
    [in/out] Ein Zeiger auf den Speicher, in den die Anzahl von Zeilen, die von einem Befehl betroffen sind, zurückgegeben werden.Wenn es ist keine NULL Zeilenanzahl wird zurückgegeben *pRowsAffected.Andernfalls Öffnen legt diesen fest pRowsAffected * gemäß den folgenden Bedingungen:

    If

    Then

    Das cParamSets-Element aus pParams ist größer als 1

    *pRowsAffected stellt die Gesamtzahl der Zeilen dar, die von allen - Parameter legt betroffen sind, die bei der Ausführung angegeben werden.

    Die Anzahl der betroffenen Zeilen nicht verfügbar ist

    *pRowsAffected ist 1 festgelegt.

    Der Befehl nicht aktualisiert oder gelöscht wird, fügen Zeilen

    *pRowsAffected ist nicht definiert.

  • guidCommand
    [in] Eine GUID, die die Syntax und die allgemeinen Regeln angeben, damit der Anbieter verwendet, wenn der Befehlstext analysiert.Weitere Informationen finden Sie unter ICommandText::GetCommandText und ICommandText::SetCommandText in der OLE DB-Programmierreferenz.

  • bBind
    [in] Gibt an, ob der Befehl automatisch nach Bindung ausgeführt werden.Der Standardwert ist true, der den Befehl ausführt, automatisch gebunden werden soll.Einstellung bBind zu false verhindert die automatische Bindung des Befehls, sodass Sie manuell binden können.Manuelle (besonderem Interesse sind vom Bindung zu OLAP-Benutzern).

  • ulPropSets
    [in] Die Anzahl der DBPROPSET-Strukturen pPropSet das übergebene Argument.

Rückgabewert

Standardmäßige HRESULT.

Hinweise

Die ersten drei Formen von Öffnen nehmen eine Sitzung, und führen einen Befehl Erstellen den Befehl aus und ggf. alle Parameter gebunden.

Die erste Form von Öffnen nimmt eine Unicode-Befehlszeichenfolge und hat keinen Standardwert.

Die zweite Form von Öffnen nimmt eine ANSI-Befehlszeichenfolge (kein Standardwert bereitgestellt und für die Abwärtskompatibilität mit vorhandenen ANSI-Anwendungen).

Das dritte Form der Öffnen der Befehlszeichenfolge, um int aufgrund des Typs mit einem Standardwert von NULL NULL sein.Es wird zum Aufrufen von Open(session, NULL); oder Open(session); bereitgestellt, da NULL vom Typ int ist.Diese Version erfordert und bestätigt, dass der int-Parameter NULL ist.

Verwenden Sie das vierte Form von Öffnen, wenn Sie bereits über ein Befehl erstellt haben und einzelnes Bereiten Sie sich vor und mehrere Ausführungen ausführen möchten.

HinweisHinweis

Öffnen ruft Execute an, das wiederum GetNextResult aufruft.

Anforderungen

Header: atldbcli.h

Siehe auch

Referenz

CCommand-Klasse