

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# SendCommand
<a name="API_QLDB-Session_SendCommand"></a>

Sendet einen Befehl an ein Amazon QLDB-Ledger.

**Anmerkung**  
Anstatt direkt mit dieser API zu interagieren, empfehlen wir, den QLDB-Treiber oder die QLDB-Shell zu verwenden, um Datentransaktionen in einem Ledger auszuführen.  
Wenn Sie mit einem AWS SDK arbeiten, verwenden Sie den QLDB-Treiber. Der Treiber bietet eine abstrakte Ebene über dieser *QLDB-Sitzungsdaten-API* und verwaltet den `SendCommand` Vorgang für Sie. Informationen und eine Liste der unterstützten Programmiersprachen finden Sie unter [Erste Schritte mit dem Treiber](https://docs.aws.amazon.com/qldb/latest/developerguide/getting-started-driver.html) im *Amazon QLDB Developer Guide*.
Wenn Sie mit AWS Command Line Interface (AWS CLI) arbeiten, verwenden Sie die QLDB-Shell. Die Shell ist eine Befehlszeilenschnittstelle, die den QLDB-Treiber verwendet, um mit einem Ledger zu interagieren. Weitere Informationen finden Sie unter [Zugreifen auf Amazon QLDB mithilfe der QLDB-Shell](https://docs.aws.amazon.com/qldb/latest/developerguide/data-shell.html).

## Anforderungssyntax
<a name="API_QLDB-Session_SendCommand_RequestSyntax"></a>

```
{
   "AbortTransaction": { 
   },
   "CommitTransaction": { 
      "CommitDigest": blob,
      "TransactionId": "string"
   },
   "EndSession": { 
   },
   "ExecuteStatement": { 
      "Parameters": [ 
         { 
            "IonBinary": blob,
            "IonText": "string"
         }
      ],
      "Statement": "string",
      "TransactionId": "string"
   },
   "FetchPage": { 
      "NextPageToken": "string",
      "TransactionId": "string"
   },
   "SessionToken": "string",
   "StartSession": { 
      "LedgerName": "string"
   },
   "StartTransaction": { 
   }
}
```

## Anforderungsparameter
<a name="API_QLDB-Session_SendCommand_RequestParameters"></a>

Informationen zu den Parametern, die alle Aktionen gemeinsam haben, finden Sie unter [Allgemeine Parameter](CommonParameters.md).

Die Anforderung akzeptiert die folgenden Daten im JSON-Format.

 ** [AbortTransaction](#API_QLDB-Session_SendCommand_RequestSyntax) **   <a name="qldb-QLDB-Session_SendCommand-request-AbortTransaction"></a>
Befehl zum Abbrechen der aktuellen Transaktion.  
Typ: [AbortTransactionRequest](API_QLDB-Session_AbortTransactionRequest.md) Objekt  
Erforderlich: Nein

 ** [CommitTransaction](#API_QLDB-Session_SendCommand_RequestSyntax) **   <a name="qldb-QLDB-Session_SendCommand-request-CommitTransaction"></a>
Befehl zum Festschreiben der angegebenen Transaktion.  
Typ: [CommitTransactionRequest](API_QLDB-Session_CommitTransactionRequest.md) Objekt  
Erforderlich: Nein

 ** [EndSession](#API_QLDB-Session_SendCommand_RequestSyntax) **   <a name="qldb-QLDB-Session_SendCommand-request-EndSession"></a>
Befehl zum Beenden der aktuellen Sitzung.  
Typ: [EndSessionRequest](API_QLDB-Session_EndSessionRequest.md) Objekt  
Erforderlich: Nein

 ** [ExecuteStatement](#API_QLDB-Session_SendCommand_RequestSyntax) **   <a name="qldb-QLDB-Session_SendCommand-request-ExecuteStatement"></a>
Befehl zum Ausführen einer Anweisung in der angegebenen Transaktion.  
Typ: [ExecuteStatementRequest](API_QLDB-Session_ExecuteStatementRequest.md) Objekt  
Erforderlich: Nein

 ** [FetchPage](#API_QLDB-Session_SendCommand_RequestSyntax) **   <a name="qldb-QLDB-Session_SendCommand-request-FetchPage"></a>
Befehl zum Abrufen einer Seite.  
Typ: [FetchPageRequest](API_QLDB-Session_FetchPageRequest.md) Objekt  
Erforderlich: Nein

 ** [SessionToken](#API_QLDB-Session_SendCommand_RequestSyntax) **   <a name="qldb-QLDB-Session_SendCommand-request-SessionToken"></a>
Gibt das Sitzungstoken für den aktuellen Befehl an. Ein Sitzungstoken ist während der gesamten Dauer der Sitzung konstant.  
Führen Sie den `StartSession` Befehl aus, um ein Sitzungstoken zu erhalten. Dies `SessionToken` ist für jeden nachfolgenden Befehl erforderlich, der während der aktuellen Sitzung ausgegeben wird.  
Typ: Zeichenfolge  
Längenbeschränkungen: Mindestlänge von 4. Maximale Länge beträgt 1024 Zeichen.  
Pattern: `^[A-Za-z-0-9+/=]+$`   
Erforderlich: Nein

 ** [StartSession](#API_QLDB-Session_SendCommand_RequestSyntax) **   <a name="qldb-QLDB-Session_SendCommand-request-StartSession"></a>
Befehl zum Starten einer neuen Sitzung. Ein Sitzungstoken wird als Teil der Antwort abgerufen.  
Typ: [StartSessionRequest](API_QLDB-Session_StartSessionRequest.md) Objekt  
Erforderlich: Nein

 ** [StartTransaction](#API_QLDB-Session_SendCommand_RequestSyntax) **   <a name="qldb-QLDB-Session_SendCommand-request-StartTransaction"></a>
Befehl zum Starten einer neuen Transaktion.  
Typ: [StartTransactionRequest](API_QLDB-Session_StartTransactionRequest.md) Objekt  
Erforderlich: Nein

## Antwortsyntax
<a name="API_QLDB-Session_SendCommand_ResponseSyntax"></a>

```
{
   "AbortTransaction": { 
      "TimingInformation": { 
         "ProcessingTimeMilliseconds": number
      }
   },
   "CommitTransaction": { 
      "CommitDigest": blob,
      "ConsumedIOs": { 
         "ReadIOs": number,
         "WriteIOs": number
      },
      "TimingInformation": { 
         "ProcessingTimeMilliseconds": number
      },
      "TransactionId": "string"
   },
   "EndSession": { 
      "TimingInformation": { 
         "ProcessingTimeMilliseconds": number
      }
   },
   "ExecuteStatement": { 
      "ConsumedIOs": { 
         "ReadIOs": number,
         "WriteIOs": number
      },
      "FirstPage": { 
         "NextPageToken": "string",
         "Values": [ 
            { 
               "IonBinary": blob,
               "IonText": "string"
            }
         ]
      },
      "TimingInformation": { 
         "ProcessingTimeMilliseconds": number
      }
   },
   "FetchPage": { 
      "ConsumedIOs": { 
         "ReadIOs": number,
         "WriteIOs": number
      },
      "Page": { 
         "NextPageToken": "string",
         "Values": [ 
            { 
               "IonBinary": blob,
               "IonText": "string"
            }
         ]
      },
      "TimingInformation": { 
         "ProcessingTimeMilliseconds": number
      }
   },
   "StartSession": { 
      "SessionToken": "string",
      "TimingInformation": { 
         "ProcessingTimeMilliseconds": number
      }
   },
   "StartTransaction": { 
      "TimingInformation": { 
         "ProcessingTimeMilliseconds": number
      },
      "TransactionId": "string"
   }
}
```

## Antwortelemente
<a name="API_QLDB-Session_SendCommand_ResponseElements"></a>

Wenn die Aktion erfolgreich ist, sendet der Service eine HTTP 200-Antwort zurück.

Die folgenden Daten werden vom Service im JSON-Format zurückgegeben.

 ** [AbortTransaction](#API_QLDB-Session_SendCommand_ResponseSyntax) **   <a name="qldb-QLDB-Session_SendCommand-response-AbortTransaction"></a>
Enthält die Details der abgebrochenen Transaktion.  
Typ: [AbortTransactionResult](API_QLDB-Session_AbortTransactionResult.md) Objekt

 ** [CommitTransaction](#API_QLDB-Session_SendCommand_ResponseSyntax) **   <a name="qldb-QLDB-Session_SendCommand-response-CommitTransaction"></a>
Enthält die Details der festgeschriebenen Transaktion.  
Typ: [CommitTransactionResult](API_QLDB-Session_CommitTransactionResult.md) Objekt

 ** [EndSession](#API_QLDB-Session_SendCommand_ResponseSyntax) **   <a name="qldb-QLDB-Session_SendCommand-response-EndSession"></a>
Enthält die Details der beendeten Sitzung.  
Typ: [EndSessionResult](API_QLDB-Session_EndSessionResult.md) Objekt

 ** [ExecuteStatement](#API_QLDB-Session_SendCommand_ResponseSyntax) **   <a name="qldb-QLDB-Session_SendCommand-response-ExecuteStatement"></a>
Enthält die Details der ausgeführten Anweisung.  
Typ: [ExecuteStatementResult](API_QLDB-Session_ExecuteStatementResult.md) Objekt

 ** [FetchPage](#API_QLDB-Session_SendCommand_ResponseSyntax) **   <a name="qldb-QLDB-Session_SendCommand-response-FetchPage"></a>
Enthält die Details der abgerufenen Seite.  
Typ: [FetchPageResult](API_QLDB-Session_FetchPageResult.md) Objekt

 ** [StartSession](#API_QLDB-Session_SendCommand_ResponseSyntax) **   <a name="qldb-QLDB-Session_SendCommand-response-StartSession"></a>
Enthält die Details der gestarteten Sitzung, die ein Sitzungstoken enthält. Dies `SessionToken` ist für jeden nachfolgenden Befehl erforderlich, der während der aktuellen Sitzung ausgegeben wird.  
Typ: [StartSessionResult](API_QLDB-Session_StartSessionResult.md) Objekt

 ** [StartTransaction](#API_QLDB-Session_SendCommand_ResponseSyntax) **   <a name="qldb-QLDB-Session_SendCommand-response-StartTransaction"></a>
Enthält die Details der gestarteten Transaktion.  
Typ: [StartTransactionResult](API_QLDB-Session_StartTransactionResult.md) Objekt

## Fehler
<a name="API_QLDB-Session_SendCommand_Errors"></a>

Weitere Informationen zu den allgemeinen Fehlern, die bei allen Aktionen zurückgegeben werden, finden Sie unter [Häufige Fehler](CommonErrors.md).

 ** BadRequestException **   
Wird zurückgegeben, wenn die Anfrage fehlerhaft ist oder einen Fehler enthält, z. B. einen ungültigen Parameterwert oder einen fehlenden erforderlichen Parameter.  
HTTP Status Code: 400

 ** CapacityExceededException **   
Wird zurückgegeben, wenn die Anfrage die Verarbeitungskapazität des Ledgers überschreitet.  
HTTP Status Code: 400

 ** InvalidSessionException **   
Wird zurückgegeben, wenn die Sitzung nicht mehr existiert, weil das Zeitlimit überschritten wurde oder sie abgelaufen ist.  
HTTP Status Code: 400

 ** LimitExceededException **   
Wird zurückgegeben, wenn ein Ressourcenlimit, z. B. die Anzahl der aktiven Sitzungen, überschritten wird.  
HTTP Status Code: 400

 ** OccConflictException **   
Wird zurückgegeben, wenn eine Transaktion aufgrund eines Fehlers in der Überprüfungsphase von *Optimistic Concurrency Control* (OCC) nicht in das Journal geschrieben werden kann.  
HTTP Status Code: 400

 ** RateExceededException **   
Wird zurückgegeben, wenn die Anzahl der Anfragen den zulässigen Durchsatz überschreitet.  
HTTP Status Code: 400

## Weitere Informationen finden Sie unter:
<a name="API_QLDB-Session_SendCommand_SeeAlso"></a>

Weitere Informationen zur Verwendung dieser API in einer der sprachspezifischen Sprachen AWS SDKs finden Sie im Folgenden:
+  [AWS -Befehlszeilenschnittstelle](https://docs.aws.amazon.com/goto/aws-cli/qldb-session-2019-07-11/SendCommand) 
+  [AWS SDK for .NET](https://docs.aws.amazon.com/goto/DotNetSDKV3/qldb-session-2019-07-11/SendCommand) 
+  [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/qldb-session-2019-07-11/SendCommand) 
+  [AWS SDK for Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/qldb-session-2019-07-11/SendCommand) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/qldb-session-2019-07-11/SendCommand) 
+  [AWS SDK für JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/qldb-session-2019-07-11/SendCommand) 
+  [AWS SDK für Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/qldb-session-2019-07-11/SendCommand) 
+  [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/qldb-session-2019-07-11/SendCommand) 
+  [AWS SDK für Python](https://docs.aws.amazon.com/goto/boto3/qldb-session-2019-07-11/SendCommand) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/qldb-session-2019-07-11/SendCommand) 