

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.

# Vorherige Version der Low-Level-API für DynamoDB (2011-12-05)
<a name="Appendix.APIv20111205"></a>

In diesem Abschnitt werden die Operationen dokumentiert, die in der vorherigen Version der DynamoDB-Low-Level-API (2011-12-05) verfügbar sind. Diese Version der Low-Level-API wird für die Abwärtskompatibilität mit vorhandenen Anwendungen beibehalten.

**Neue Anwendungen sollten die aktuelle API-Version (2012-08-10) verwenden**. Weitere Informationen finden Sie unter [Referenz zur DynamoDB-API](CurrentAPI.md).

**Anmerkung**  
Wir empfehlen, dass Sie Ihre vorhandenen Anwendungen auf die aktuelle API-Version (2012-08-10) migrieren, da neue DynamoDB-Funktionen nicht auf die vorherige API-Version rückportiert werden.

**Topics**
+ [BatchGetItem](API_BatchGetItem_v20111205.md)
+ [BatchWriteItem](API_BatchWriteItem_v20111205.md)
+ [CreateTable](API_CreateTable_v20111205.md)
+ [DeleteItem](API_DeleteItem_v20111205.md)
+ [DeleteTable](API_DeleteTable_v20111205.md)
+ [DescribeTables](API_DescribeTables_v20111205.md)
+ [GetItem](API_GetItem_v20111205.md)
+ [ListTables](API_ListTables_v20111205.md)
+ [PutItem](API_PutItem_v20111205.md)
+ [Abfrage](API_Query_v20111205.md)
+ [Scan](API_Scan_v20111205.md)
+ [UpdateItem](API_UpdateItem_v20111205.md)
+ [UpdateTable](API_UpdateTable_v20111205.md)

# BatchGetItem
<a name="API_BatchGetItem_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_BatchGetItem_Description"></a>

Die `BatchGetItem`-Operation gibt die Attribute für mehrere Elemente aus verschiedenen Tabellen unter Verwendung ihrer Primärschlüssel zurück. Die maximale Anzahl von Elementen, die für eine einzelne Operation abgerufen werden können, ist 100. Außerdem wird die Anzahl der abgerufenen Elemente durch eine Größenbeschränkung von 1 MB begrenzt. Wenn die Größenbeschränkung der Antwort überschritten wird oder ein Teilergebnis aufgrund einer Überschreitung des bereitgestellten Durchsatzes der Tabelle oder aufgrund eines internen Verarbeitungsfehlers zurückgegeben wird, gibt DynamoDB einen `UnprocessedKeys`-Wert zurück, sodass Sie die Operation mit den nächsten abzurufenden Element wiederholen können. DynamoDB passt die Anzahl von Elementen, die pro Seite zurückgegeben werden, automatisch an, um diese Größenbeschränkung zu erzwingen. Beispiel: Wenn Sie 100 Elemente abrufen möchten, jedes Element aber 50 KB umfasst, gibt das System nur 20 Elemente und einen entsprechenden `UnprocessedKeys`-Wert zurück, damit Sie die nächste Ergebnisseite abrufen können. Wenn Sie möchten, kann Ihre Anwendung eine eigene Logik für die Zusammenstellung der Ergebnisseiten in einem Satz einbeziehen.

Wenn aufgrund eines unzureichenden, bereitgestellten Durchsatzes für die von der Anforderung betroffenen Tabellen keine Elemente verarbeitet werden konnten, gibt DynamoDB einen `ProvisionedThroughputExceededException`-Fehler zurück. 

**Anmerkung**  
Standardmäßig führt `BatchGetItem` „Eventually Consistent“-Lesevorgänge für jede von der Anforderung betroffenen Tabelle aus. Sie können den Parameter `ConsistentRead` für einzelne Tabellen auf `true` einstellen, wenn stattdessen Consistent-Lesevorgänge ausgeführt werden sollen.  
`BatchGetItem` ruft Elemente parallel ab, um Antwortlatenzen zu minimieren.  
Bedenken Sie bei der Entwicklung Ihrer Anwendung, dass DynamoDB nicht sicherstellt, in welcher Reihenfolge die Attribute in der Antwort zurückgegeben werden. Schließen Sie die Primärschlüsselwerte in `AttributesToGet` für die Elemente in Ihrer Anforderung ein, um die Antwort nach Element zu analysieren.   
Wenn die angeforderten Elemente nicht vorhanden sind, wird in der Antwort für diese Elemente nichts zurückgegeben. Anforderungen für nicht vorhandene Elemente verbrauchen je nach Typ des Lesevorgangs die Mindestlesekapazitätseinheiten. Weitere Informationen finden Sie unter [Elementgrößen und -formate in DynamoDB](CapacityUnitCalculations.md).

## Anforderungen
<a name="API_BatchGetItem_RequestParameters"></a>

### Syntax
<a name="API_BatchGetItem_RequestParameters.syntax"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.BatchGetItem 
content-type: application/x-amz-json-1.0 

{"RequestItems":
    {"Table1": 
        {"Keys": 
            [{"HashKeyElement": {"S":"KeyValue1"}, "RangeKeyElement":{"N":"KeyValue2"}},
            {"HashKeyElement": {"S":"KeyValue3"}, "RangeKeyElement":{"N":"KeyValue4"}},
            {"HashKeyElement": {"S":"KeyValue5"}, "RangeKeyElement":{"N":"KeyValue6"}}],
        "AttributesToGet":["AttributeName1", "AttributeName2", "AttributeName3"]},
    "Table2": 
        {"Keys": 
            [{"HashKeyElement": {"S":"KeyValue4"}}, 
            {"HashKeyElement": {"S":"KeyValue5"}}],
        "AttributesToGet": ["AttributeName4", "AttributeName5", "AttributeName6"]
        }
    }
}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  RequestItems  | Ein Container des Tabellennamens und die entsprechenden Elemente, die nach Primärschlüssel abgerufen werden sollen. Beim Anfordern von Elementen kann jeder Tabellenname nur einmal pro Operation aufgerufen werden.**Typ:** Zeichenfolge Standard: keiner  |  Ja | 
| Table |  Der Name der Tabelle, die die abzurufenden Elemente enthält. Der Eintrag ist einfach eine Zeichenfolge, die eine vorhandene Tabelle ohne Bezeichnung angibt. **Typ:** Zeichenfolge  Standard: keiner   | Ja | 
| Table:Keys  |  Die Primärschlüsselwerte, die die Elemente in der angegebenen Tabelle definieren. Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey). Typ: Schlüssel   | Ja | 
| Table:AttributesToGet  |  Array von Attributnamen in der angegebenen Tabelle. Wenn Attributnamen nicht angegeben sind, dann werden alle Attribute zurückgegeben. Wenn einige Attribute nicht gefunden werden, sind sie nicht im Abfrageergebnis enthalten.  Typ: Array   | Nein | 
| Table:ConsistentRead  |  Wenn auf `true` festgelegt, dann wird ein Consistent-Lesevorgang ausgegeben, andernfalls wird Eventually Consistent verwendet. Typ: Boolesch   | Nein | 

## Antworten
<a name="API_BatchGetItem_ResponseElements"></a>

### Syntax
<a name="API_BatchGetItem_ResponseElements.syntax"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375
content-type: application/x-amz-json-1.0 
content-length: 855

{"Responses":
    {"Table1":
        {"Items":
        [{"AttributeName1": {"S":"AttributeValue"},
        "AttributeName2": {"N":"AttributeValue"},
        "AttributeName3": {"SS":["AttributeValue", "AttributeValue", "AttributeValue"]}
        },
        {"AttributeName1": {"S": "AttributeValue"},
        "AttributeName2": {"S": "AttributeValue"},
        "AttributeName3": {"NS": ["AttributeValue", "AttributeValue", "AttributeValue"]}
        }],
    "ConsumedCapacityUnits":1},
    "Table2": 
        {"Items":
        [{"AttributeName1": {"S":"AttributeValue"},
        "AttributeName2": {"N":"AttributeValue"},
        "AttributeName3": {"SS":["AttributeValue", "AttributeValue", "AttributeValue"]}
        },
        {"AttributeName1": {"S": "AttributeValue"},
        "AttributeName2": {"S": "AttributeValue"},
        "AttributeName3": {"NS": ["AttributeValue", "AttributeValue","AttributeValue"]}
        }],
    "ConsumedCapacityUnits":1}
    },
    "UnprocessedKeys":
        {"Table3": 
        {"Keys": 
            [{"HashKeyElement": {"S":"KeyValue1"}, "RangeKeyElement":{"N":"KeyValue2"}},
            {"HashKeyElement": {"S":"KeyValue3"}, "RangeKeyElement":{"N":"KeyValue4"}},
            {"HashKeyElement": {"S":"KeyValue5"}, "RangeKeyElement":{"N":"KeyValue6"}}],
        "AttributesToGet":["AttributeName1", "AttributeName2", "AttributeName3"]}
        }
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
| Responses  | Tabellennamen und die entsprechenden Elementattribute aus den Tabellen.Typ: Zuordnung  | 
| Table |  Der Name der Tabelle, die die Elemente enthält. Der Eintrag ist einfach eine Zeichenfolge, die die Tabelle ohne Bezeichnung angibt.**Typ:** Zeichenfolge  | 
| Items  | Container für die Attributnamen und Werte, die mit den Operationsparametern übereinstimmen.Typ: Zuordnung der Attributnamen und ihrer Datentypen und Werte. | 
| ConsumedCapacityUnits | Die Anzahl der Lesekapazitätseinheiten, die für jede Tabelle verbraucht werden. Dieser Wert zeigt die Anzahl, die für Ihren bereitgestellten Durchsatz gültig ist. Anforderungen für nicht vorhandene Elemente verbrauchen je nach Typ des Lesevorgangs die Mindestlesekapazitätseinheiten. Weitere Informationen finden Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md). Typ: Zahl | 
| UnprocessedKeys | Enthält ein Array von Tabellen mit den entsprechenden Schlüsseln, die mit der aktuellen Antwort nicht verarbeitet wurden, da das Limit der Antwortgröße möglicherweise erreicht wurde. Der `UnprocessedKeys`-Wert hat das gleiche Format wie ein `RequestItems`-Parameter (sodass der Wert einer folgenden `BatchGetItem`-Operation direkt bereitgestellt werden kann). Weitere Informationen finden Sie unter dem obigen `RequestItems`-Parameter.Typ: Array  | 
| UnprocessedKeys: Table: Keys  | Die Attributwerte des Primärschlüssels, die die Elemente und die den Elementen zugeordneten Attributen definieren. Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).Typ: Array von Attribut-Namen-Wert-Paare.  | 
| UnprocessedKeys: Table: AttributesToGet  |  Attributnamen in der angegebenen Tabelle. Wenn Attributnamen nicht angegeben sind, dann werden alle Attribute zurückgegeben. Wenn einige Attribute nicht gefunden werden, sind sie nicht im Abfrageergebnis enthalten.  Typ: Array von Attributnamen.  | 
| UnprocessedKeys: Table: ConsistentRead  |  Wenn dieser Wert auf `true` festgelegt ist, wird ein Consistent-Lesevorgang für die angegebene Tabelle verwendet, andernfalls ein Eventually Consistent-Lesevorgang. Typ: boolescher Wert.  | 

## Spezielle Fehler
<a name="API_BatchGetItem_SpecialErrors"></a>


****  

|  Fehler  |  Beschreibung  | 
| --- | --- | 
| ProvisionedThroughputExceededException  | Der maximal zulässige bereitgestellte Durchsatz wurde überschritten.  | 

## Beispiele
<a name="API_BatchGetItem_Examples"></a>

Die folgenden Beispiele zeigen eine HTTP-POST-Anforderung und Antwort mithilfe der BatchGetItem-Operation. Beispiele für die Verwendung des AWS SDK finden Sie unter [Arbeiten mit Elementen und Attributen in DynamoDB](WorkingWithItems.md).

### Beispielanforderung
<a name="API_BatchGetItem_Examples_Request"></a>

Mit dem folgenden Beispiel werden Attribute aus zwei verschiedenen Tabellen angefordert.

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.BatchGetItem 
content-type: application/x-amz-json-1.0 
content-length: 409

{"RequestItems":
    {"comp1":
        {"Keys":
            [{"HashKeyElement":{"S":"Casey"},"RangeKeyElement":{"N":"1319509152"}},
            {"HashKeyElement":{"S":"Dave"},"RangeKeyElement":{"N":"1319509155"}},
            {"HashKeyElement":{"S":"Riley"},"RangeKeyElement":{"N":"1319509158"}}],
        "AttributesToGet":["user","status"]},
    "comp2":
        {"Keys":
            [{"HashKeyElement":{"S":"Julie"}},{"HashKeyElement":{"S":"Mingus"}}],
        "AttributesToGet":["user","friends"]}
    }
}
```

### Beispielantwort
<a name="API_BatchGetItem_Examples_Response"></a>

Das folgende Beispiel zeigt die Antwort.

```
HTTP/1.1 200 OK
x-amzn-RequestId: GTPQVRM4VJS792J1UFJTKUBVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0 
content-length: 373
Date: Fri, 02 Sep 2011 23:07:39 GMT

{"Responses":
    {"comp1":
        {"Items":
            [{"status":{"S":"online"},"user":{"S":"Casey"}},
            {"status":{"S":"working"},"user":{"S":"Riley"}},
            {"status":{"S":"running"},"user":{"S":"Dave"}}],
        "ConsumedCapacityUnits":1.5},
    "comp2":
        {"Items":
            [{"friends":{"SS":["Elisabeth", "Peter"]},"user":{"S":"Mingus"}},
            {"friends":{"SS":["Dave", "Peter"]},"user":{"S":"Julie"}}],
        "ConsumedCapacityUnits":1}
    },
    "UnprocessedKeys":{}
}
```

# BatchWriteItem
<a name="API_BatchWriteItem_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_BatchWriteItems_Description"></a>

Diese Operation ermöglicht Ihnen, anhand eines einzigen Aufrufs, das Ablegen und Löschen mehrerer Elemente in mehreren Tabellen. 

Für den Upload eines Elements können Sie `PutItem` und für das Löschen eines Elements `DeleteItem` verwenden. Wenn Sie allerdings große Datenmengen hochladen oder löschen möchten, wie z. B. das Hochladen großer Datenmengen von Amazon EMR (Amazon EMR) oder das Migrieren von Daten aus einer anderen Datenbank zu DynamoDB, bietet `BatchWriteItem` eine effiziente Alternative. 

Wenn Sie Sprachen wie Java verwenden, können Sie Threads nutzen, um Elemente parallel hochzuladen. Dadurch wird Ihrer Anwendung Komplexität zum Behandeln von Threads hinzugefügt. Andere Sprachen unterstützen Threading nicht. Wenn Sie beispielsweise PHP verwenden, müssen Sie Elemente nacheinander hochladen oder löschen. In beiden Fällen bietet `BatchWriteItem` eine Alternative, in der die angegebenen Ablege- und Löschoperationen parallel verarbeitet werden. Somit erhalten Sie die Leistung des Thread-Pool-Ansatzes, ohne der Anwendung Komplexität hinzufügen zu müssen. 

Beachten Sie, dass jeder einzelne Ablege- und Löschvorgang, der in einer `BatchWriteItem`-Operation angegeben wird, dasselbe in Bezug auf verbrauchte Kapazitätseinheiten kostet. Da `BatchWriteItem` die angegebenen Operationen jedoch parallel durchführt, erhalten Sie eine niedrigere Latenz. Delete-Operationen für nicht vorhandene Elemente verbrauchen eine Schreibkapazitätseinheit. Weitere Informationen zu verbrauchten Kapazitätseinheiten finden Sie unter [Arbeiten mit Tabellen und Daten in DynamoDB](WorkingWithTables.md).

Wenn Sie `BatchWriteItem` verwenden, beachten Sie die folgenden Einschränkungen:
+ **Maximale Operationen in einer einzigen Anforderung – **Sie können insgesamt bis zu 25 Ablege- oder Löschoperationen angeben. Jedoch darf die Gesamtgröße der Anforderung 1 MB (die HTTP-Nutzlast) nicht überschreiten. 
+ Sie können die `BatchWriteItem`-Operation ausschließlich zum Ablegen und Löschen von Elemente nutzen. Sie können sie nicht verwenden, um vorhandene Elemente zu aktualisieren.
+ **Nicht-atomare Operation – **Einzeloperationen, die in einem `BatchWriteItem` angegeben werden, sind atomar. Jedoch ist `BatchWriteItem` als Ganzes eine Operation "nach besten Kräften" und keine atomare Operation. Das bedeutet, dass einige Operationen in einer `BatchWriteItem` Anforderung möglicherweise erfolgreich sind und andere fehlschlagen könnten. Die fehlgeschlagenen Operationen werden in einem `UnprocessedItems`-Feld in der Antwort zurückgegeben. Einige dieser Ausfälle sind möglicherweise durch eine Überschreitung des für die Tabelle konfigurierten bereitgestellten Durchsatzes oder durch einen vorübergehenden Fehler, wie beispielsweise einen Netzwerkfehler, aufgetreten. Sie können die Anforderungen prüfen und optional erneut senden. In der Regel rufen Sie `BatchWriteItem` in einer Schleife auf. Dann prüfen Sie auf unverarbeitete Elemente in jeder Iteration und übermitteln eine neue `BatchWriteItem`-Anforderung mit diesen unverarbeiteten Elementen. 
+ **Gibt keine Elemente zurück – **Das `BatchWriteItem` ist für das effiziente Hochladen großer Datenmengen entwickelt worden. Es liefert einige Raffinessen nicht, die von `PutItem` und `DeleteItem` angeboten werden. Beispielsweise unterstützt `DeleteItem` das `ReturnValues`-Feld in Ihrem Anforderungstext, um das gelöschte Element in der Antwort anzufordern. Die `BatchWriteItem`-Operation gibt keine Elemente in der Antwort zurück.
+ Im Gegensatz zu `PutItem` und `DeleteItem`, erlaubt `BatchWriteItem` Ihnen nicht, Bedingungen für einzelne Schreibanforderungen in der Operation anzugeben.
+ Attributwerte dürfen nicht Null sein; Zeichenfolge- und Binärtypattribute müssen Längen haben, die größer als Null sind und festgelegte Typenattribute dürfen nicht leer sein. Anforderungen mit leeren Werten werden mit einem `ValidationException` abgelehnt.

DynamoDB lehnt den gesamten Batchschreibvorgang ab, wenn eine der folgenden Bedingungen erfüllt ist: 
+ Wenn eine oder mehrere Tabellen, die in der `BatchWriteItem`-Anforderung angegeben wurden, nicht vorhanden sind.
+ Wenn Primärschlüsselattribute, die für ein Element in der Anforderung angegeben wurden, nicht mit dem entsprechenden Schlüsselschema der Tabelle übereinstimmen.
+ Wenn Sie versuchen, mehrere Operationen für das gleiche Element in der gleichen `BatchWriteItem`-Anforderung durchzuführen. Sie können beispielsweise das gleiche Element in derselben `BatchWriteItem`-Anforderung nicht ablegen oder löschen. 
+ Wenn die Gesamtgröße der Anforderung die 1 MB Anforderungsgrößenbeschränkung (die HTTP-Nutzlast) überschreitet.
+ Wenn ein einzelnes Element in einem Stapel die 64 KB Elementgrößenbeschränkung überschreitet.

## Anforderungen
<a name="API_BatchWriteItems_RequestParameters"></a>

### Syntax
<a name="API_BatchWriteItems_RequestParameters.syntax"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1
x-amz-target: DynamoDB_20111205.BatchGetItem 
content-type: application/x-amz-json-1.0 

{
  "RequestItems" :  RequestItems
} 

RequestItems
{
     "TableName1" :  [ Request, Request, ... ],
     "TableName2" :  [ Request, Request, ... ],
     ...
}

Request ::=
  PutRequest | DeleteRequest

PutRequest ::=
{
  "PutRequest" : {
     "Item" : {
        "Attribute-Name1" : Attribute-Value,
        "Attribute-Name2" : Attribute-Value,
         ...
     }
  }
}

DeleteRequest ::=
{
   "DeleteRequest" : {
      "Key" : PrimaryKey-Value
   }
}


PrimaryKey-Value ::= HashTypePK | HashAndRangeTypePK

HashTypePK ::=
{ 
   "HashKeyElement" : Attribute-Value
}

HashAndRangeTypePK
{ 
   "HashKeyElement" : Attribute-Value,
   "RangeKeyElement" : Attribute-Value, 
}

Attribute-Value ::= String | Numeric| Binary | StringSet | NumericSet | BinarySet 

Numeric ::=
{
   "N": "Number"
}

String ::=
{
   "S": "String"
}

Binary ::=
{
    "B": "Base64 encoded binary data"
}

StringSet ::=
{
   "SS": [ "String1", "String2", ... ]
}

NumberSet ::=
{
   "NS": [ "Number1", "Number2", ... ]
}  

BinarySet ::=
{
   "BS": [ "Binary1", "Binary2", ... ]
}
```

Im Anforderungstext beschreibt das JSON-Objekt `RequestItems` die Operationen, die Sie durchführen möchten. Die Operationen werden nach Tabellen gruppiert. Sie können mehrere Elemente aus mehreren Tabellen mit `BatchWriteItem` aktualisieren oder löschen. Für jede bestimmte Schreibanforderung müssen Sie den Anforderungstyp (`PutItem`, `DeleteItem`), gefolgt von Detailinformationen über die Operation identifizieren. 
+ Für eine `PutRequest` stellen Sie das Element bereit, d. h. eine Liste der Attribute und deren Werte.
+ Legen Sie für eine `DeleteRequest` den Primärschlüsselnamen und Wert fest. 

## Antworten
<a name="API_BatchWriteItems_ResponseElements"></a>

### Syntax
<a name="API_BatchWriteItems_ResponseElements.syntax"></a>

Folgendes ist die Syntax des JSON-Anforderungstextes, die in der Antwort zurückgegeben wurde.

```
{
  "Responses" :         ConsumedCapacityUnitsByTable
  "UnprocessedItems" :  RequestItems
} 

ConsumedCapacityUnitsByTable
{
    "TableName1" : { "ConsumedCapacityUnits", : NumericValue },
    "TableName2" : { "ConsumedCapacityUnits", : NumericValue },
     ...
}

RequestItems
This syntax is identical to the one described in the JSON syntax in the request.
```

## Spezielle Fehler
<a name="API_BatchWriteItems_SpecialErrors"></a>

Keine nur für diese Operation spezifischen Fehler.

## Beispiele
<a name="API_BatchWriteItems_Examples"></a>

Das folgende Beispiel zeigt eine HTTP-POST-Anforderung und die Antwort einer `BatchWriteItem`-Operation. Die Anforderung gibt die folgenden Operationen in der Reply- und der Thread-Tabelle an:
+ Einfügen und Löschen eines Elements aus der Reply-Tabelle
+ Ablegen eines Element in die Thread-Tabelle

Beispiele für die Verwendung des AWS SDK finden Sie unter [Arbeiten mit Elementen und Attributen in DynamoDB](WorkingWithItems.md).

### Beispielanforderung
<a name="API_BatchWriteItems_Examples_Request"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1
x-amz-target: DynamoDB_20111205.BatchGetItem 
content-type: application/x-amz-json-1.0 

{
  "RequestItems":{
    "Reply":[
      {
        "PutRequest":{
          "Item":{
            "ReplyDateTime":{
              "S":"2012-04-03T11:04:47.034Z"
            },
            "Id":{
              "S":"DynamoDB#DynamoDB Thread 5"
            }
          }
        }
      },
      {
        "DeleteRequest":{
          "Key":{
            "HashKeyElement":{
              "S":"DynamoDB#DynamoDB Thread 4"
            },
            "RangeKeyElement":{
              "S":"oops - accidental row"
            }
          }
        }
      }
    ],
    "Thread":[
      {
        "PutRequest":{
          "Item":{
            "ForumName":{
              "S":"DynamoDB"
            },
            "Subject":{
              "S":"DynamoDB Thread 5"
            }
          }
        }
      }
    ]
  }
}
```

### Beispielantwort
<a name="API_BatchWriteItems_Examples_Response"></a>

Das folgende Antwortbeispiel zeigt, dass eine Ablegeoperation für die Thread- und Reply-Tabelle erfolgreich war und eine Delete-Operation für die Reply-Tabelle fehlgeschlagen ist (aus Gründen wie einer Drosselung, die verursacht wird, wenn Sie den bereitgestellten Durchsatz für die Tabelle überschreiten). In der JSON-Antwort ist Folgendes zu beachten:
+ Das `Responses`-Objekt zeigt, dass eine Kapazitätseinheit sowohl für die `Thread`- als auch für die `Reply`-Tabelle als Ergebnis der erfolgreichen Ablegeoperation für jede dieser Tabellen verbraucht wurde. 
+ Das `UnprocessedItems`-Objekt zeigt die erfolglose Delete-Operation für die `Reply`-Tabelle. Sie können dann einen neuen `BatchWriteItem`-Aufruf ausführen, um diese unverarbeiteten Anforderungen anzugehen.

```
HTTP/1.1 200 OK
x-amzn-RequestId: G8M9ANLOE5QA26AEUHJKJE0ASBVV4KQNSO5AEMVJF66Q9ASUAAJG
Content-Type: application/x-amz-json-1.0
Content-Length: 536
Date: Thu, 05 Apr 2012 18:22:09 GMT

{
   "Responses":{
      "Thread":{
         "ConsumedCapacityUnits":1.0
      },
      "Reply":{
         "ConsumedCapacityUnits":1.0
      }
   },
   "UnprocessedItems":{
      "Reply":[
         {
            "DeleteRequest":{
               "Key":{
                  "HashKeyElement":{
                     "S":"DynamoDB#DynamoDB Thread 4"
                  },
                  "RangeKeyElement":{
                     "S":"oops - accidental row"
                  }
               }
            }
         }
      ]
   }
}
```

# CreateTable
<a name="API_CreateTable_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_CreateTable_Description"></a>

Die `CreateTable`-Operation fügt dem Konto eine neue Tabelle hinzu.

Tabellennamen müssen innerhalb derer eindeutig sein, die dem AWS-Konto zugehören, das die Anforderung ausführt und der AWS-Region, welche die Anforderung empfängt (z.B. dynamodb.us-west-2.amazonaws.com). Jeder DynamoDB-Endpunkt ist vollständig unabhängig. Wenn Sie beispielsweise zwei Tabellen namens „MyTable“ haben, eine in dynamodb.us-west-2.amazonaws.com und eine in dynamodb.us-west-1.amazonaws.com, sind sie völlig unabhängig und teilen sich keine Daten.

Die `CreateTable`-Operation löst eine asynchrone Workload aus, um mit der Erstellung der Tabelle zu beginnen. DynamoDB gibt unmittelbar den Status der Tabelle (`CREATING`) zurück, bis sich die Tabelle im Status `ACTIVE` befindet. Sobald sich die Tabelle im Status `ACTIVE` befindet, können Sie Datenebenenoperationen durchführen. 

Verwenden Sie die [DescribeTables](API_DescribeTables_v20111205.md)-Operation, um den Status der Tabelle zu überprüfen. 

## Anforderungen
<a name="API_CreateTable_RequestParameters"></a>

### Syntax
<a name="API_CreateTable_RequestParameters.syntax"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.CreateTable 
content-type: application/x-amz-json-1.0 

{"TableName":"Table1",
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"AttributeName1","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"AttributeName2","AttributeType":"N"}},
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10}
}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |  Der Name der zu erstellenden Tabelle.Zulässige Zeichen sind a-z, A-Z, 0-9, „\$1“ (Unterstrich), „-“ (Bindestrich) und „.“ (Punkt). Namen können zwischen 3 und 255 Zeichen lang sein. **Typ:** Zeichenfolge  |  Ja  | 
|  KeySchema  | Die Struktur (einfach oder zusammengesetzt) des Primärschlüssels für die Tabelle. Ein Name-Wert-Paar ist für das `HashKeyElement` und optional für das `RangeKeyElement` erforderlich (nur für zusammengesetzte Primärschlüssel erforderlich). Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).Elementnamen der Primärschlüssel können zwischen 1 und 255 Zeichen lang sein und unterliegen keinen Zeicheneinschränkungen. Mögliche Werte für den AttributeType sind "S" (Zeichenfolge), "N" (numerisch) oder "B" (binär).Typ: Zuordnung von `HashKeyElement` oder `HashKeyElement` und `RangeKeyElement` für einen zusammengesetzten Primärschlüssel. | Ja | 
|  ProvisionedThroughput  | Neuer Durchsatz für die angegebene Tabelle, bestehend aus Werten für ReadCapacityUnits und WriteCapacityUnits. Details hierzu finden Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md).  Aktuelle Höchst- und Mindestwerte finden Sie unter [Kontingente in Amazon DynamoDB](ServiceQuotas.md). Typ: Array  | Ja | 
| ProvisionedThroughput: ReadCapacityUnits |  Legt die Mindestanzahl von konsistenten `ReadCapacityUnits` fest, die pro Sekunde für die angegebene Tabelle verbraucht wird, bevor DynamoDB die Last mit anderen Operationen ausgleicht.  Eventually Consistent-Leseoperationen erfordern weniger Aufwand als Consistent-Leseoperationen. Daher stellt die Festlegung von 50 konsistenten `ReadCapacityUnits` pro Sekunde 100 Eventually Consistent-`ReadCapacityUnits` pro Sekunde bereit. Typ: Zahl  | Ja | 
| ProvisionedThroughput: WriteCapacityUnits | Legt die Mindestanzahl von WriteCapacityUnits fest, die pro Sekunde für die angegebene Tabelle verbraucht wird, bevor DynamoDB die Last mit anderen Operationen ausgleicht. Typ: Zahl  | Ja | 

## Antworten
<a name="API_CreateTable_CommonResponseElements"></a>

### Syntax
<a name="API_CreateTable_CommonResponseElements.syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 311
Date: Tue, 12 Jul 2011 21:31:03 GMT

{"TableDescription":
    {"CreationDateTime":1.310506263362E9,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"AttributeName1","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"AttributeName2","AttributeType":"N"}},
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10},
    "TableName":"Table1",
    "TableStatus":"CREATING"
    }
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
| TableDescription  | Ein Container für die Eigenschaften der Tabelle. | 
| CreationDateTime | Datum als die Tabelle in [UNIX epoch time](http://www.epochconverter.com/) erstellt wurde.Typ: Zahl | 
| KeySchema  | Die Struktur (einfach oder zusammengesetzt) des Primärschlüssels für die Tabelle. Ein Name-Wert-Paar ist für das `HashKeyElement` und optional für das `RangeKeyElement` erforderlich (nur für zusammengesetzte Primärschlüssel erforderlich). Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).Typ: Zuordnung von `HashKeyElement` oder `HashKeyElement` und `RangeKeyElement` für einen zusammengesetzten Primärschlüssel. | 
| ProvisionedThroughput  |  Der Durchsatz für eine angegebene Tabelle, bestehend aus Werten für `ReadCapacityUnits` und `WriteCapacityUnits`. Siehe [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md). Typ: Array   | 
| ProvisionedThroughput :ReadCapacityUnits |  Die minimale Anzahl von `ReadCapacityUnits`, die pro Sekunde verbraucht werden, bevor DynamoDB die Last mit anderen Operationen ausgleichtTyp: Zahl  | 
| ProvisionedThroughput :WriteCapacityUnits |  Die minimale Anzahl von `ReadCapacityUnits`, die pro Sekunde verbraucht werden, bevor `WriteCapacityUnits` die Last mit anderen Operationen ausgleichtTyp: Zahl  | 
|  TableName  |  Der Name der erstellten Tabelle. **Typ:** Zeichenfolge  | 
|  TableStatus  | Der aktuelle Status der Tabelle (`CREATING`). Sobald sich die Tabelle im `ACTIVE`-Status befindet, können Sie in dieser Daten ablegen.Verwenden Sie die [DescribeTables](API_DescribeTables_v20111205.md)-API, um den Status der Tabelle zu überprüfen.**Typ:** Zeichenfolge | 

## Spezielle Fehler
<a name="API_CreateTable_SpecialErrors"></a>


****  

|  Fehler  |  Beschreibung  | 
| --- | --- | 
|  ResourceInUseException  | Versuch, eine bereits vorhandene Tabelle neu zu erstellen. | 
|  LimitExceededException  | Die Anzahl von gleichzeitigen Tabellenanforderungen (kumulative Anzahl von Tabellen im Status `CREATING`, `DELETING` oder `UPDATING`) überschreitet die maximal zulässige. Aktuelle Höchst- und Mindestwerte finden Sie unter [Kontingente in Amazon DynamoDB](ServiceQuotas.md). .  | 

## Beispiele
<a name="API_CreateTable_Examples"></a>

Das folgende Beispiel erstellt eine Tabelle mit einem zusammengesetzten Primärschlüssel, der eine Zeichenfolge und eine Zahl enthält. Beispiele für die Verwendung des AWS SDK finden Sie unter [Arbeiten mit Tabellen und Daten in DynamoDB](WorkingWithTables.md).

### Beispielanforderung
<a name="API_CreateTable_Examples_Request"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.CreateTable 
content-type: application/x-amz-json-1.0


{"TableName":"comp-table",
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}},
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10}
}
```

### Beispielantwort
<a name="API_CreateTable_Examples_Response"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 311
Date: Tue, 12 Jul 2011 21:31:03 GMT

{"TableDescription":
    {"CreationDateTime":1.310506263362E9,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}},
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10},
    "TableName":"comp-table",
    "TableStatus":"CREATING"
    }
}
```

## Zugehörige Aktionen
<a name="API_CreateTable_Related_Actions"></a>
+  [DescribeTables](API_DescribeTables_v20111205.md) 
+  [DeleteTable](API_DeleteTable_v20111205.md)

# DeleteItem
<a name="API_DeleteItem_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_DeleteItem_Description"></a>

Löscht ein einzelnes Element in einer Tabelle nach Primärschlüssel Sie können eine bedingte Löschoperation durchführen, die das Element löscht, wenn es vorhanden ist oder wenn es über einen erwarteten Attributwert verfügt.

**Anmerkung**  
Wenn Sie `DeleteItem` ohne Attribute oder Werte angeben, werden alle Attribute für das Element gelöscht.   
Sofern Sie keine Bedingungen angeben, ist `DeleteItem` eine idempotente Operation. Das mehrmalige Ausführen für das gleiche Element oder Attribut resultiert *nicht* in einer Fehlermeldung.  
Bedingte Löschungen eignen sich nur für das Löschen von Elementen und Attributen, wenn bestimmte Bedingungen erfüllt sind. Wenn die Bedingungen erfüllt sind, führt DynamoDB die Löschung durch. Andernfalls wird das Element nicht gelöscht.   
Sie können die erwartete bedingte Prüfung für ein Attribut pro Operation durchführen.

## Anforderungen
<a name="API_DeleteItem_RequestParameters"></a>

### Syntax
<a name="API_DeleteItem_RequestParameters.syntax"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.DeleteItem 
content-type: application/x-amz-json-1.0 

{"TableName":"Table1",
    "Key":
        {"HashKeyElement":{"S":"AttributeValue1"},"RangeKeyElement":{"N":"AttributeValue2"}},
    "Expected":{"AttributeName3":{"Value":{"S":"AttributeValue3"}}},
    "ReturnValues":"ALL_OLD"}
}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |  Der Name der Tabelle, die das zu löschende Element enthält. **Typ:** Zeichenfolge  |  Ja  | 
|  Key  | Der Primärschlüssel, der das Element definiert. Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).Typ: Zuordnung von `HashKeyElement` zu seinem Wert und von `RangeKeyElement` zu seinem Wert. | Ja | 
| Expected  | Bestimmt ein Attribut für eine bedingte Löschung. Der Parameter `Expected` ermöglicht es Ihnen, einen Attributnamen anzugeben und zu entscheiden, ob DynamoDB prüfen soll oder nicht, ob das Attribut über einen bestimmten Wert verfügt, bevor es gelöscht wird.Typ: Zuordnung von Attributnamen. | Nein | 
| Expected:AttributeName  | Der Name des Attributs für die bedingte Put-Operation. **Typ:** Zeichenfolge | Nein | 
| Expected:AttributeName: ExpectedAttributeValue | Verwenden Sie diesen Parameter, um anzugeben, ob ein Wert für das Attributname-Wert-Paar bereits vorhanden ist oder nicht. Die folgende JSON-Notation löscht das Element, wenn das Attribut "Farbe" für dieses Element nicht vorhanden ist:<pre>"Expected" :<br />	{"Color":{"Exists":false}}</pre>Die folgende JSON-Notation prüft, ob das Attribut mit dem Namen "Farbe" über einen vorhandenen Wert für "Gelb" verfügt, bevor das Element gelöscht wird: <pre>"Expected" : <br />	{"Color":{"Exists":true},{"Value":{"S":"Yellow"}}}</pre>Wenn Sie den Parameter `Expected` verwenden und einen `Value` angeben, geht DynamoDB davon aus, dass das Attribut vorhanden ist und einen zu ersetzenden aktuellen Wert hat. Sie müssen `{"Exists":true}` demnach nicht angeben, weil er enthalten ist. Sie können die Anforderung verkürzen, um:<pre>"Expected" : <br />	{"Color":{"Value":{"S":"Yellow"}}}</pre> Wenn Sie `{"Exists":true}` ohne einen zu prüfenden Attributwert angeben, gibt DynamoDB einen Fehler zurück.  | Nein | 
| ReturnValues  | Verwenden Sie diesen Parameter, wenn Sie die Attribut-Namen-Wert-Paare erhalten möchten, bevor sie gelöscht wurden. Mögliche Parameterwerte sind `NONE` (Standard) oder `ALL_OLD`. Wenn `ALL_OLD` angegeben wird, werden die Inhalte des alten Elements zurückgegeben. Wenn dieser Parameter nicht angegeben wird oder `NONE` ist, wird nichts zurückgegeben.**Typ:** Zeichenfolge | Nein | 

## Antworten
<a name="API_DeleteItem_CommonResponseElements"></a>

### Syntax
<a name="API_DeleteItem_CommonResponseElements.syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 353
Date: Tue, 12 Jul 2011 21:31:03 GMT

{"Attributes":
    {"AttributeName3":{"SS":["AttributeValue3","AttributeValue4","AttributeValue5"]},
    "AttributeName2":{"S":"AttributeValue2"},
    "AttributeName1":{"N":"AttributeValue1"}
    },
"ConsumedCapacityUnits":1
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
|  Attributes  | Wenn der Parameter `ReturnValues` als `ALL_OLD` in der Anforderung angegeben wird, gibt DynamoDB ein Array von Attribut-Namen-Wert-Paare zurück (im Wesentlichen, das gelöschte Element). Andernfalls enthält die Antwort einen leeren Satz. Typ: Array von Attribut-Namen-Wert-Paare. | 
| ConsumedCapacityUnits | Die Anzahl der Schreibkapazitätseinheiten, die von dem Vorgang verbraucht werden. Dieser Wert zeigt die Anzahl, die für Ihren bereitgestellten Durchsatz gültig ist. Löschoperationen für nicht vorhandene Elemente verbrauchen 1 Schreibkapazitätseinheit. Weitere Informationen finden Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md). Typ: Zahl | 

## Spezielle Fehler
<a name="API_DeleteItem_SpecialErrors"></a>


****  

|  Fehler  |  Beschreibung  | 
| --- | --- | 
|  ConditionalCheckFailedException  | Bedingte Prüfung fehlgeschlagen. Ein erwarteter Attributwert wurde nicht gefunden.  | 

## Beispiele
<a name="API_DeleteItem_Examples"></a>

### Beispielanforderung
<a name="API_DeleteItem_Examples_Request"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.DeleteItem 
content-type: application/x-amz-json-1.0

{"TableName":"comp-table",
    "Key":
        {"HashKeyElement":{"S":"Mingus"},"RangeKeyElement":{"N":"200"}},
    "Expected":
        {"status":{"Value":{"S":"shopping"}}},
    "ReturnValues":"ALL_OLD"
}
```

### Beispielantwort
<a name="API_DeleteItem_Examples_Response"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: U9809LI6BBFJA5N2R0TB0P017JVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 353
Date: Tue, 12 Jul 2011 22:31:23 GMT

{"Attributes":
    {"friends":{"SS":["Dooley","Ben","Daisy"]},
    "status":{"S":"shopping"},
    "time":{"N":"200"},
    "user":{"S":"Mingus"}
    },
"ConsumedCapacityUnits":1
}
```

## Zugehörige Aktionen
<a name="API_DeleteItem_Related_Actions"></a>
+  [PutItem](API_PutItem_v20111205.md) 

# DeleteTable
<a name="API_DeleteTable_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_DeleteTable_Description"></a>

Die `DeleteTable`-Operation löscht eine Tabelle und alle ihre Elemente. Nach einer `DeleteTable`-Anforderung, befindet sich die angegebene Tabelle im Status `DELETING`, bis DynamoDB die Löschung abschließt. Wenn sich die Tabelle im Status `ACTIVE` befindet, können Sie sie löschen. Wenn eine Tabelle sich im Status `CREATING` oder `UPDATING` befindet, gibt DynamoDB den Fehler `ResourceInUseException` zurück. Wenn die angegebene Tabelle nicht vorhanden ist, gibt DynamoDB einen `ResourceNotFoundException` zurück. Wenn die Tabelle sich bereits im Status `DELETING` befindet, wird kein Fehler zurückgegeben. 

**Anmerkung**  
DynamoDB kann möglicherweise Operationsanforderungen auf Datenebene, z. B. `GetItem` und `PutItem`, in einer Tabelle mit dem Status `DELETING` akzeptieren, bis die Löschung der Tabelle abgeschlossen ist.

Alle Tabellen, die mit dem AWS-Konto verknüpft sind, das die Anforderung ausgibt, und die AWS-Region, welche die Anforderung empfängt, sind eindeutig (z.B. dynamodb.us-west-1.amazonaws.com). Jeder DynamoDB-Endpunkt ist vollständig unabhängig. Wenn Sie beispielsweise zwei Tabellen namens „MyTable“ haben, eine in dynamodb.us-west-2.amazonaws.com und eine in dynamodb.us-west-1.amazonaws.com, sind sie völlig unabhängig und teilen sich keine Daten; das Löschen der einen löscht die andere nicht.

Verwenden Sie die [DescribeTables](API_DescribeTables_v20111205.md)-Operation, um den Status der Tabelle zu überprüfen. 

## Anforderungen
<a name="API_DeleteTable_RequestParameters"></a>

### Syntax
<a name="API_DeleteTable_RequestParameters.syntax"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.DeleteTable 
content-type: application/x-amz-json-1.0

{"TableName":"Table1"}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |   Der Name der zu löschenden Tabelle.   **Typ:** Zeichenfolge   |  Ja  | 

## Antworten
<a name="API_DeleteTable_CommonResponseElements"></a>

### Syntax
<a name="API_DeleteTable_CommonResponseElements.syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: 4HONCKIVH1BFUDQ1U68CTG3N27VV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 311
Date: Sun, 14 Aug 2011 22:56:22 GMT

{"TableDescription":
    {"CreationDateTime":1.313362508446E9,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}},
    "ProvisionedThroughput":{"ReadCapacityUnits":10,"WriteCapacityUnits":10},
    "TableName":"Table1",
    "TableStatus":"DELETING"
    }
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
| TableDescription  | Ein Container für die Eigenschaften der Tabelle. | 
| CreationDateTime | Das Datum, an dem die Tabelle erstellt wurde.Typ: Zahl  | 
| KeySchema  | Die Struktur (einfach oder zusammengesetzt) des Primärschlüssels für die Tabelle. Ein Name-Wert-Paar ist für das `HashKeyElement` und optional für das `RangeKeyElement` erforderlich (nur für zusammengesetzte Primärschlüssel erforderlich). Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).Typ: Zuordnung von `HashKeyElement` oder `HashKeyElement` und `RangeKeyElement` für einen zusammengesetzten Primärschlüssel. | 
| ProvisionedThroughput  | Der Durchsatz für eine angegebene Tabelle, bestehend aus Werten für ReadCapacityUnits und WriteCapacityUnits. Siehe [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md). | 
| ProvisionedThroughput: ReadCapacityUnits |  Die Mindestanzahl von `ReadCapacityUnits`, die pro Sekunde für die angegebene Tabelle verbraucht werden, bevor DynamoDB die Last mit anderen Operationen ausgleicht. Typ: Zahl  | 
| ProvisionedThroughput: WriteCapacityUnits | Die Mindestanzahl von `WriteCapacityUnits`, die pro Sekunde für die angegebene Tabelle verbraucht werden, bevor DynamoDB die Last mit anderen Operationen ausgleicht.Typ: Zahl  | 
|  TableName  |  Der Name der gelöschten Tabelle. **Typ:** Zeichenfolge   | 
|  TableStatus  | Der aktuelle Status der Tabelle (DELETING). Sobald die Tabelle gelöscht wird, werden nachfolgende Anforderungen für die Tabelle zurückgegeben resource not found. Verwenden Sie die [DescribeTables](API_DescribeTables_v20111205.md)-Operation, um den Status der Tabelle zu überprüfen. **Typ:** Zeichenfolge | 

## Spezielle Fehler
<a name="API_DeleteTable_SpecialErrors"></a>


****  

|  Fehler  |  Beschreibung  | 
| --- | --- | 
|  ResourceInUseException  |  Die Tabelle befindet sich im Status CREATING oder UPDATING und kann nicht gelöscht werden.  | 

## Beispiele
<a name="API_DeleteTable_Examples"></a>

### Beispielanforderung
<a name="API_DeleteTable_Examples_Request"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.DeleteTable
content-type: application/x-amz-json-1.0
content-length: 40

{"TableName":"favorite-movies-table"}
```

### Beispielantwort
<a name="API_DeleteTable_Examples_Response"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: 4HONCKIVH1BFUDQ1U68CTG3N27VV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 160
Date: Sun, 14 Aug 2011 17:20:03 GMT

{"TableDescription":
    {"CreationDateTime":1.313362508446E9,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"name","AttributeType":"S"}},
    "TableName":"favorite-movies-table",
    "TableStatus":"DELETING"
}
```

## Zugehörige Aktionen
<a name="API_DeleteTable_Related_Actions"></a>
+  [CreateTable](API_CreateTable_v20111205.md) 
+  [DescribeTables](API_DescribeTables_v20111205.md) 

# DescribeTables
<a name="API_DescribeTables_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_DescribeTables_Description"></a>

Gibt Informationen über die Tabelle, einschließlich ihrem aktuellen Status, das Primärschlüsselschema und den Zeitpunkt der Tabellenerstellung zurück. DescribeTables-Ergebnisse sind Eventually Consistent. Wenn Sie DescribeTables bei der Erstellung einer Tabelle zu früh verwenden, gibt DynamoDB eine `ResourceNotFoundException` zurück. Wenn Sie DescribeTables bei der Aktualisierung einer Tabelle zu früh verwenden, werden die neuen Werte möglicherweise nicht sofort verfügbar sind.

## Anforderungen
<a name="API_DescribeTables_RequestParameters"></a>

### Syntax
<a name="API_DescribeTables_RequestParameters.syntax"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.DescribeTable
content-type: application/x-amz-json-1.0

{"TableName":"Table1"}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |  Der Name der zu beschreibenden Tabelle.  **Typ:** Zeichenfolge   |  Ja  | 

## Antworten
<a name="API_DescribeTables_ResponseElements"></a>

### Syntax
<a name="API_DescribeTables_ResponseElements.syntax"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375
content-type: application/x-amz-json-1.0
Content-Length: 543


{"Table":
    {"CreationDateTime":1.309988345372E9,
    ItemCount:1,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"AttributeName1","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"AttributeName2","AttributeType":"N"}},
    "ProvisionedThroughput":{"LastIncreaseDateTime": Date, "LastDecreaseDateTime": Date, "ReadCapacityUnits":10,"WriteCapacityUnits":10},
    "TableName":"Table1",
    "TableSizeBytes":1,
    "TableStatus":"ACTIVE"
    }
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
|  Table  |  Container für die Tabelle, die beschrieben wird **Typ:** Zeichenfolge  | 
| CreationDateTime | Datum als die Tabelle in [UNIX epoch time](http://www.epochconverter.com/) erstellt wurde. | 
|  ItemCount  |  Anzahl der Elemente in der angegebenen Tabelle DynamoDB aktualisiert diesen Wert ca. alle sechs Stunden. Neueste Änderungen werden in diesem Wert möglicherweise nicht wiedergegeben. Typ: Zahl  | 
|  KeySchema  | Die Struktur (einfach oder zusammengesetzt) des Primärschlüssels für die Tabelle. Ein Name-Wert-Paar ist für das HashKeyElement und optional für das RangeKeyElement erforderlich (nur für zusammengesetzte Primärschlüssel erforderlich). Die maximale Hash-Schlüsselgröße ist 2048 Byte. Die maximale Range-Schlüsselgröße ist 1024 Byte. Beide Grenzen werden separat durchgesetzt (d. h. Sie können einen kombinierten Hash \$1 Range 2048 \$1 1024-Schlüssel haben). Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey). | 
| ProvisionedThroughput  | Der Durchsatz für die angegebene Tabelle, bestehend aus Werten für LastIncreaseDateTime (falls zutreffend), LastDecreaseDateTime (falls zutreffend), ReadCapacityUnits und WriteCapacityUnits. Wenn der Durchsatz für die Tabelle noch nie erhöht oder verringert wurde, gibt DynamoDB keine Werte für diese Elemente zurück. Siehe [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md).Typ: Array  | 
|  TableName  |  Der Name der angeforderten Tabelle.  **Typ:** Zeichenfolge  | 
|  TableSizeBytes  |  Die Gesamtgröße der angegebenen Tabelle in Bytes. DynamoDB aktualisiert diesen Wert ca. alle sechs Stunden. Neueste Änderungen werden in diesem Wert möglicherweise nicht wiedergegeben. Typ: Zahl  | 
|  TableStatus  | Der aktuelle Status der Tabelle (CREATING, ACTIVE, DELETING oder UPDATING). Sobald sich die Tabelle in dem ACTIVE-Status befindet, können Sie Daten hinzufügen.  | 

## Spezielle Fehler
<a name="API_DescribeTables_SpecialErrors"></a>

Keine Fehler sind für diese Operation spezifisch.

## Beispiele
<a name="API_DescribeTables_Examples"></a>

 Die folgenden Beispiele zeigen eine HTTP-POST-Anforderung und Antwort mithilfe der "DescribeTable"-Operation für eine Tabelle mit dem Namen "comp-table". Die Tabelle verfügt über einen zusammengesetzten Primärschlüssel.

### Beispielanforderung
<a name="API_DescribeTables_Examples_Request"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.DescribeTable
content-type: application/x-amz-json-1.0

{"TableName":"users"}
```

### Beispielantwort
<a name="API_DescribeTables_Examples_Response"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375
content-type: application/x-amz-json-1.0
content-length: 543

{"Table":
    {"CreationDateTime":1.309988345372E9,
    "ItemCount":23,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}},
    "ProvisionedThroughput":{"LastIncreaseDateTime": 1.309988345384E9, "ReadCapacityUnits":10,"WriteCapacityUnits":10},
    "TableName":"users",
    "TableSizeBytes":949,
    "TableStatus":"ACTIVE"
    }
}
```

## Zugehörige Aktionen
<a name="API_DescribeTables_Related_Actions"></a>
+  [CreateTable](API_CreateTable_v20111205.md) 
+  [DeleteTable](API_DeleteTable_v20111205.md) 
+  [ListTables](API_ListTables_v20111205.md) 

# GetItem
<a name="API_GetItem_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_GetItem_Description"></a>

Die `GetItem`-Operation gibt einen `Attributes`-Satz für ein Element zurück, das mit dem Primärschlüssel übereinstimmt. Wenn kein passendes Element vorhanden ist, gibt `GetItem` keine Daten zurück.

Die `GetItem`-Operation stellt standardmäßig einen Eventually Consistent-Lesevorgang bereit. Wenn Eventually Consistent-Lesevorgänge für Ihre Anwendung nicht akzeptabel sind, verwenden Sie `ConsistentRead`. Obwohl diese Operation länger dauern könnte als ein Standardlesevorgang, gibt sie immer den letzten aktualisierten Wert zurück. Weitere Informationen finden Sie unter [DynamoDB-Lesekonsistenz](HowItWorks.ReadConsistency.md).

## Anforderungen
<a name="API_GetItem_RequestParameters"></a>

### Syntax
<a name="API_GetItem_RequestParameters.syntax"></a>

```
// This header is abbreviated.
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.GetItem
content-type: application/x-amz-json-1.0 

{"TableName":"Table1",
 	"Key": 
		{"HashKeyElement": {"S":"AttributeValue1"},
		"RangeKeyElement": {"N":"AttributeValue2"} 
	},
	"AttributesToGet":["AttributeName3","AttributeName4"],
	"ConsistentRead":Boolean
}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |  Der Name der Tabelle, die das angeforderte Element enthält.  **Typ:** Zeichenfolge  |  Ja  | 
|  Key  | Die Primärschlüsselwerte, die das Element definieren. Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).Typ: Zuordnung von `HashKeyElement` zu seinem Wert und von `RangeKeyElement` zu seinem Wert. | Ja | 
| AttributesToGet  | Array von Attributnamen. Wenn Attributnamen nicht angegeben sind, dann werden alle Attribute zurückgegeben. Wenn einige Attribute nicht gefunden werden, sind sie nicht im Abfrageergebnis enthalten.Typ: Array | Nein | 
| ConsistentRead  | Wenn auf `true` festgelegt, dann wird ein Consistent-Lesevorgang ausgegeben, andernfalls wird Eventually Consistent verwendet.Typ: Boolesch | Nein | 

## Antworten
<a name="API_GetItem_ResponseElements"></a>

### Syntax
<a name="API_GetItem_ResponseElements.syntax"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0
content-length: 144

{"Item":{
	"AttributeName3":{"S":"AttributeValue3"},
	"AttributeName4":{"N":"AttributeValue4"},
	"AttributeName5":{"B":"dmFsdWU="}
	},
"ConsumedCapacityUnits": 0.5
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
|  Item  | Enthält die angeforderten Attribute.Typ: Zuordnung von Attribut-Namen-Wert-Paare. | 
| ConsumedCapacityUnits | Die Anzahl der Lesekapazitätseinheiten, die von der Operation verbraucht werden. Dieser Wert zeigt die Anzahl, die für Ihren bereitgestellten Durchsatz gültig ist. Anforderungen für nicht vorhandene Elemente verbrauchen je nach Typ des Lesevorgangs die Mindestlesekapazitätseinheiten. Weitere Informationen finden Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md). Typ: Zahl | 

## Spezielle Fehler
<a name="API_GetItem_SpecialErrors"></a>

Keine nur für diese Operation spezifischen Fehler.

## Beispiele
<a name="API_GetItem_Examples"></a>

 Beispiele für die Verwendung des AWS SDK finden Sie unter [Arbeiten mit Elementen und Attributen in DynamoDB](WorkingWithItems.md).

### Beispielanforderung
<a name="API_GetItem_Examples_Request"></a>

```
// This header is abbreviated.
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.GetItem
content-type: application/x-amz-json-1.0 

{"TableName":"comptable",
	"Key":
		{"HashKeyElement":{"S":"Julie"},
		"RangeKeyElement":{"N":"1307654345"}},
	"AttributesToGet":["status","friends"],
	"ConsistentRead":true
}
```

### Beispielantwort
<a name="API_GetItem_Examples_Response"></a>

Beachten Sie, dass der Wert für die verbrauchten Kapazitätseinheiten 1 ist, weil der optionale Parameter `ConsistentRead` auf `true` festgelegt ist. Wenn `ConsistentRead` für die gleiche Anforderung auf `false` festgelegt ist (oder nicht angegeben ist), ist die Antwort Eventually Consistent und der Wert für die verbrauchten Kapazitätseinheiten wäre 0,5.

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0
content-length: 72

{"Item":
	{"friends":{"SS":["Lynda, Aaron"]},
	"status":{"S":"online"}
	},
"ConsumedCapacityUnits": 1
}
```

# ListTables
<a name="API_ListTables_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_ListTables_Description"></a>

Gibt ein Array aller Tabellen zurück, die dem aktuellen Konto und Endpunkt zugeordnet sind.

Jeder DynamoDB-Endpunkt ist vollständig unabhängig. Wenn Sie beispielsweise zwei Tabellen namens „MyTable“ haben, eine in dynamodb.us-west-2.amazonaws.com und eine in dynamodb.us-east-1.amazonaws.com, sind sie völlig unabhängig und teilen sich keine Daten. Die ListTables-Operation gibt alle Tabellennamen, die mit dem Konto verknüpft sind, von dem die Anforderung stammt, für den Endpunkt, der die Anforderung empfängt, zurück.

## Anforderungen
<a name="API_ListTables_RequestParameters"></a>

### Syntax
<a name="API_ListTables_RequestParameters.syntax"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.ListTables
content-type: application/x-amz-json-1.0

{"ExclusiveStartTableName":"Table1","Limit":3}
```

Die ListTables-Operation fordert standardmäßig alle Tabellennamen, die mit dem Konto verknüpft sind, von dem die Anforderung stammt, für den Endpunkt, der die Anforderung empfängt, an.


****  

|  Name  |  Beschreibung  | Erforderlich | 
| --- | --- | --- | 
|  Limit  |  Eine Reihe von zurückzugebenden maximalen Tabellennamen.  Typ: Ganzzahl  | Nein | 
| ExclusiveStartTableName  | Der Name der Tabelle, mit der die Liste beginnt. Wenn Sie bereits eine ListTables-Operation ausgeführt und einen `LastEvaluatedTableName`-Wert in der Antwort erhalten haben, verwenden Sie diesen Wert, um die Liste fortzuführen. **Typ:** Zeichenfolge | Nein | 

## Antworten
<a name="API_ListTables_ResponseElements"></a>

### Syntax
<a name="API_ListTables_ResponseElements.syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: S1LEK2DPQP8OJNHVHL8OU2M7KRVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 81
Date: Fri, 21 Oct 2011 20:35:38 GMT

{"TableNames":["Table1","Table2","Table3"], "LastEvaluatedTableName":"Table3"}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
|  TableNames  |  Die Namen der Tabellen, die dem aktuellen Konto am aktuellen Endpunkt zugeordnet sind.  Typ: Array  | 
| LastEvaluatedTableName  | Der Name der letzten Tabelle in der aktuellen Liste, sofern einige Tabellen für das Konto und den Endpunkt nicht zurückgegeben wurden. Dieser Wert ist in einer Antwort nicht vorhanden, wenn alle Tabellennamen bereits zurückgegeben wurden. Verwenden Sie diesen Wert als `ExclusiveStartTableName` in einer neuen Anforderung, um die Liste fortzuführen, bis alle Tabellennamen zurückgegeben werden.  **Typ:** Zeichenfolge  | 

## Spezielle Fehler
<a name="API_ListTables_SpecialErrors"></a>

Keine Fehler sind für diese Operation spezifisch.

## Beispiele
<a name="API_ListTables_Examples"></a>

Die folgenden Beispiele zeigen eine HTTP-POST-Anforderung und Antwort mithilfe der ListTables-Operation.

### Beispielanforderung
<a name="API_ListTables_Examples_Request"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.ListTables
content-type: application/x-amz-json-1.0

{"ExclusiveStartTableName":"comp2","Limit":3}
```

### Beispielantwort
<a name="API_ListTables_Examples_Response"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: S1LEK2DPQP8OJNHVHL8OU2M7KRVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 81
Date: Fri, 21 Oct 2011 20:35:38 GMT

{"LastEvaluatedTableName":"comp5","TableNames":["comp3","comp4","comp5"]}
```

## Zugehörige Aktionen
<a name="API_ListTables_Related_Actions"></a>
+  [DescribeTables](API_DescribeTables_v20111205.md) 
+  [CreateTable](API_CreateTable_v20111205.md) 
+  [DeleteTable](API_DeleteTable_v20111205.md) 

# PutItem
<a name="API_PutItem_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_PutItem_Description"></a>

Erstellt ein neues Element oder ersetzt ein altes durch ein neues Element (einschließlich aller Attribute). Wenn ein Element in der angegebenen Tabelle mit demselben Primärschlüssel bereits vorhanden ist, wird das vorhandene vollständig durch das neue Element ersetzt. Sie können eine bedingte PUT-Transaktion ausführen (ein neues Element einfügen, wenn keins mit dem angegebenen Primärschlüssel vorhanden ist) oder ein vorhandenes Element ersetzen, wenn es bestimmte Attributwerte besitzt. 

Attributwerte dürfen nicht Null sein, Zeichenketten- und Binärtypattribute müssen Längen haben, die größer als Null sind, und festgelegte Typattribute dürfen nicht leer sein. Anfragen mit leeren Werten werden mit einer `ValidationException` abgelehnt.

**Anmerkung**  
Um sicherzustellen, dass ein vorhandenes nicht durch ein neues Element ersetzt wird, verwenden Sie eine bedingte PUT-Operation, wobei `Exists` für das bzw. die Primärschlüsselattribute auf `false` festgelegt wird.

Weitere Informationen zur Verwendung von `PutItem` finden Sie unter [Arbeiten mit Elementen und Attributen in DynamoDB](WorkingWithItems.md).

## Anforderungen
<a name="API_PutItem_RequestParameters"></a>

### Syntax
<a name="API_PutItem_RequestParameters.syntax"></a>

```
// This header is abbreviated.
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.PutItem
content-type: application/x-amz-json-1.0

{"TableName":"Table1",
    "Item":{
        "AttributeName1":{"S":"AttributeValue1"},
        "AttributeName2":{"N":"AttributeValue2"},
        "AttributeName5":{"B":"dmFsdWU="}
    },
    "Expected":{"AttributeName3":{"Value": {"S":"AttributeValue"}, "Exists":Boolean}},
    "ReturnValues":"ReturnValuesConstant"}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |  Der Name der Tabelle, die das Element enthält. **Typ:** Zeichenfolge  |  Ja  | 
|  Item  | Eine Übersicht über die Attribute für das Element, die die Primärschlüsselwerte zur Definition des Elements enthalten muss. Andere Attribut-Namen-Wert-Paare können für das Element bereitgestellt werden. Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).Typ: Zuweisung von Attributnamen und zu Attributwerten. | Ja | 
| Expected  | Gibt ein Attribut für eine bedingte PUT-Operation an. Der Parameter `Expected` erlaubt es Ihnen, einen Attributnamen anzugeben und festzulegen, ob DynamoDB überprüfen soll, ob der Attributwert bereits vorhanden ist bzw. ob der Attributwert vorhanden ist und über einen bestimmten Wert verfügt, bevor er geändert wird.Typ: Zuweisung eines Attributnamens zu einem Attributwert und ob er vorhanden ist. | Nein | 
| Expected:AttributeName  | Der Name des Attributs für die bedingte Put-Operation.**Typ:** Zeichenfolge | Nein | 
| Expected:AttributeName: ExpectedAttributeValue | Verwenden Sie diesen Parameter, um anzugeben, ob ein Wert für das Attributname-Wert-Paar bereits vorhanden ist oder nicht. Die folgende JSON-Notation ersetzt das Element, wenn das Attribut "Farbe" für dieses Element noch nicht vorhanden ist:<pre>"Expected" :<br />	{"Color":{"Exists":false}}</pre>Die folgende JSON-Notation prüft, ob das Attribut mit dem Namen "Farbe" über einen vorhandenen "Gelb"-Wert verfügt, bevor das Element ersetzt wird: <pre>"Expected" : <br />	{"Color":{"Exists":true,{"Value":{"S":"Yellow"}}}</pre>Wenn Sie den Parameter `Expected` verwenden und einen `Value` angeben, geht DynamoDB standardmäßig davon aus, dass das Attribut vorhanden ist und einen zu ersetzenden aktuellen Wert hat. Sie müssen `{"Exists":true}` demnach nicht angeben, weil er enthalten ist. Sie können die Anforderung verkürzen, um:<pre>"Expected" : <br />	{"Color":{"Value":{"S":"Yellow"}}}</pre> Wenn Sie `{"Exists":true}` ohne einen zu prüfenden Attributwert angeben, gibt DynamoDB einen Fehler zurück.  | Nein | 
| ReturnValues  | Verwenden Sie diesen Parameter, wenn Sie die Attribut-Namen-Wert-Paare erhalten möchten, bevor sie mit der `PutItem`-Anforderung aktualisiert wurden. Mögliche Parameterwerte sind `NONE` (Standard) oder `ALL_OLD`. Wenn `ALL_OLD` angegeben ist und ein Attribut-Namen-Wert-Paar durch `PutItem` überschrieben wurde, wird der Inhalt des alten Elements zurückgegeben. Wenn dieser Parameter nicht angegeben wird oder `NONE` ist, wird nichts zurückgegeben.**Typ:** Zeichenfolge | Nein | 

## Antworten
<a name="API_PutItem_CommonResponseElements"></a>

### Syntax
<a name="API_PutItem_CommonResponseElements.syntax"></a>

In dem folgenden Syntax-Beispiel wird davon ausgegangen, dass die Anforderung für den Parameter `ReturnValues` `ALL_OLD` angegeben hat; andernfalls beinhaltet die Antwort nur das `ConsumedCapacityUnits`-Element.

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0
content-length: 85

{"Attributes":
	{"AttributeName3":{"S":"AttributeValue3"},
	"AttributeName2":{"SS":"AttributeValue2"},
	"AttributeName1":{"SS":"AttributeValue1"},
	},
"ConsumedCapacityUnits":1
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
|  Attributes  | Attributwerte vor der PUT-Operation, aber nur wenn der Parameter `ReturnValues` in der Anforderung mit `ALL_OLD` angegeben wird.Typ: Zuordnung von Attribut-Namen-Wert-Paare. | 
| ConsumedCapacityUnits | Die Anzahl der Schreibkapazitätseinheiten, die von dem Vorgang verbraucht werden. Dieser Wert zeigt die Anzahl, die für Ihren bereitgestellten Durchsatz gültig ist. Weitere Informationen finden Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md). Typ: Zahl | 

## Spezielle Fehler
<a name="API_PutItem_SpecialErrors"></a>


****  

|  Fehler  |  Beschreibung  | 
| --- | --- | 
|  ConditionalCheckFailedException  | Bedingte Prüfung fehlgeschlagen. Ein erwarteter Attributwert wurde nicht gefunden.  | 
| ResourceNotFoundException  | Das angegebene Element oder Attribut wurde nicht gefunden. | 

## Beispiele
<a name="API_PutItem_Examples"></a>

Beispiele für die Verwendung des AWS SDK finden Sie unter [Arbeiten mit Elementen und Attributen in DynamoDB](WorkingWithItems.md).

### Beispielanforderung
<a name="API_PutItem_Examples_Request"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.PutItem 
content-type: application/x-amz-json-1.0

{"TableName":"comp5",
	"Item":
		{"time":{"N":"300"},
		"feeling":{"S":"not surprised"},
		"user":{"S":"Riley"}
		},
	"Expected":
		{"feeling":{"Value":{"S":"surprised"},"Exists":true}}
	"ReturnValues":"ALL_OLD"
}
```

### Beispielantwort
<a name="API_PutItem_Examples_Response"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 8952fa74-71e9-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0
content-length: 84

{"Attributes":
	{"feeling":{"S":"surprised"},
	"time":{"N":"300"},
	"user":{"S":"Riley"}},
"ConsumedCapacityUnits":1
}
```

## Zugehörige Aktionen
<a name="API_PutItem_Related_Actions"></a>
+  [UpdateItem](API_UpdateItem_v20111205.md) 
+  [DeleteItem](API_DeleteItem_v20111205.md) 
+  [GetItem](API_GetItem_v20111205.md) 
+  [BatchGetItem](API_BatchGetItem_v20111205.md) 

# Abfrage
<a name="API_Query_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_Query_Description"></a>

Eine `Query`-Operation ruft die Werte eines oder mehrerer Elemente mit den zugehörigen Attributen nach Primärschlüssel ab (`Query` ist nur für Hash- und Bereichsprimärschlüssel-Tabellen verfügbar). Sie müssen einen spezifischen `HashKeyValue` angeben und können den Umfang der Abfrage einschränken, indem Sie Vergleichsoperatoren auf den `RangeKeyValue` des Primärschlüssels anwenden. Verwenden Sie den Parameter `ScanIndexForward`, um Ergebnisse nach Bereichsschlüssel in vorwärts gerichteter oder umgekehrter Reihenfolge zu erhalten. 

Abfragen, die keine Ergebnisse zurückgeben, verbrauchen die minimalen Lesekapazitätseinheiten entsprechend dem Lesetyp.

**Anmerkung**  
Wenn die Gesamtanzahl der Elemente, die den Abfrageparametern entsprechen, das Limit von 1 MB überschreitet, wird die Abfrage beendet und die Ergebnisse werden an den Benutzer mit einem `LastEvaluatedKey` zurückgegeben. Die Abfrage wird in einer nachfolgenden Operation fortgesetzt. Im Gegensatz zu einer Scan-Operation gibt eine Abfrage-Operation niemals einen leeren Ergebnissatz *und* einen `LastEvaluatedKey` zurück. Der `LastEvaluatedKey` wird nur bereitgestellt, wenn die Ergebnisse 1 MB überschreiten oder wenn Sie den Parameter `Limit` verwendet haben.   
Das Ergebnis kann für einen Consistent-Lesevorgang mit dem Parameter `ConsistentRead` festgelegt werden.

## Anforderungen
<a name="API_Query_RequestParameters"></a>

### Syntax
<a name="API_Query_RequestParameters.syntax"></a>

```
// This header is abbreviated.
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Query  
content-type: application/x-amz-json-1.0

{"TableName":"Table1",
	"Limit":2,
	"ConsistentRead":true,
	"HashKeyValue":{"S":"AttributeValue1":},
	"RangeKeyCondition": {"AttributeValueList":[{"N":"AttributeValue2"}],"ComparisonOperator":"GT"}
	"ScanIndexForward":true,
	"ExclusiveStartKey":{
		"HashKeyElement":{"S":"AttributeName1"},
		"RangeKeyElement":{"N":"AttributeName2"}
	},
    "AttributesToGet":["AttributeName1", "AttributeName2", "AttributeName3"]},
}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |  Der Name der Tabelle, die die angeforderten Elemente enthält.  **Typ:** Zeichenfolge  |  Ja  | 
| AttributesToGet  | Array von Attributnamen. Wenn Attributnamen nicht angegeben sind, dann werden alle Attribute zurückgegeben. Wenn einige Attribute nicht gefunden werden, sind sie nicht im Abfrageergebnis enthalten.Typ: Array | Nein | 
| Limit  | Die maximale Anzahl der zurückzugebenden Elemente (nicht notwendigerweise die Anzahl der übereinstimmenden Elemente). Wenn DynamoDB bei der Abfrage der Tabelle die Anzahl der Elemente bis zum Limit verarbeitet, wird die Abfrage beendet und es werden die bis zu diesem Punkt übereinstimmenden Werte zurückgegeben. Außerdem wird ein `LastEvaluatedKey` ausgegeben, der bei einer nachfolgenden Operation angewendet wird, um die Abfrage fortzusetzen. Wenn der Ergebnissatz 1 MB überschreitet, bevor DynamoDB dieses Limit erreicht, wird die Abfrage beendet und es werden die übereinstimmenden Werte zurückgegeben. Außerdem wird der `LastEvaluatedKey` ausgegeben, der bei einer nachfolgenden Operation angewendet wird, um mit der Abfrage fortzufahren.Typ: Zahl | Nein | 
| ConsistentRead  | Wenn auf `true` festgelegt, dann wird ein Consistent-Lesevorgang ausgegeben, andernfalls wird Eventually Consistent verwendet.Typ: Boolesch | Nein | 
| Count  | Wenn auf `true` festgelegt, gibt DynamoDB die Gesamtzahl der Elemente zurück, die mit den Abfrageparametern übereinstimmen, anstatt eine Liste der übereinstimmenden Elemente und der zugehörigen Attribute. Sie können den Parameter `Limit` auf Abfragen anwenden, die nur zählen.  Setzen Sie `Count` nicht auf `true`, wenn Sie eine Liste von `AttributesToGet` bereitstellen, sonst gibt DynamoDB einen Validierungsfehler zurück. Weitere Informationen finden Sie unter [Zählen der Elemente in den Ergebnissen](Query.Other.md#Query.Count).Typ: Boolesch | Nein | 
| HashKeyValue  | Attributwert der Hash-Komponente des zusammengesetzten Primärschlüssels.Typ: Zeichenfolge, Zahl oder Binärzahl | Ja | 
| RangeKeyCondition  | Ein Container für die Attributwerte und Vergleichsoperatoren für die Abfrage. Eine Abfrageanforderung erfordert keine `RangeKeyCondition`. Wenn Sie nur den `HashKeyValue` angeben, gibt DynamoDB alle Elemente mit dem angegebenen Hash-Schlüsselelementwert zurück.Typ: Zuordnung | Nein | 
| RangeKeyCondition:​ AttributeValueList | Die Attributwerte zur Bewertung der Abfrageparameter. `AttributeValueList` enthält einen Attributwert, es sei denn, es wurde ein `BETWEEN` -Vergleich angegeben. Für den `BETWEEN`-Vergleich enthält `AttributeValueList` zwei Attributwerte. Typ: Zuordnung von `AttributeValue` zu einer `ComparisonOperator`.  | Nein | 
| RangeKeyCondition:​ ComparisonOperator |  Die Kriterien für die Bewertung der bereitgestellten Attribute, z. B. gleich, größer als usw. Die folgenden Operatoren sind gültige Vergleichsoperatoren für eine Abfrage-Operation.  Vergleiche von Zeichenfolgenwerten für größer als, gleich oder kleiner als basieren auf ASCII-Zeichensatzwerten. Beispiel: `a` ist größer als `A` und `aa` ist größer als `B`. Eine Liste von Codewerten finden Sie unter [http://en.wikipedia.org/wiki/ASCII\$1ASCII\$1printable\$1characters](http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters).  Beim Binärtyp behandelt DynamoDB jedes Byte der Binärdaten als ohne Vorzeichen, wenn binäre Werte verglichen werden (z. B. bei der Bewertung von Abfrageausdrücken).   Typ: Zeichenfolge oder Binärzahl  | Nein | 
|   | `EQ` : gleich. Bei `EQ` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch, `{"N":"6"}` ist nicht gleich `{"NS":["6", "2", "1"]}`. |   | 
|   | `LE` : kleiner als oder gleich. Bei `LE` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch, `{"N":"6"}` entspricht nicht `{"NS":["6", "2", "1"]}`. |   | 
|   | `LT` : kleiner als. Bei `LT` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch, `{"N":"6"}` entspricht nicht `{"NS":["6", "2", "1"]}`. |   | 
|   | `GE` : größer als oder gleich. Bei `GE` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch entspricht `{"N":"6"}` nicht `{"NS":["6", "2", "1"]}`. |   | 
|   | `GT` : größer als. Bei `GT` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch, `{"N":"6"}` entspricht nicht `{"NS":["6", "2", "1"]}`. |   | 
|   | `BEGINS_WITH`: Prüft auf ein Präfix. Bei `BEGINS_WITH` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge oder Binärzahl (keine Zahl bzw. keinen Satz) enthalten. Das Zielattribut des Vergleichs muss vom Typ Zeichenfolge oder Binärzahl sein (keine Zahl bzw. kein Satz). |   | 
|   | `BETWEEN`: Größer als oder gleich dem ersten Wert und kleiner als oder gleich dem zweiten Wert. Für `BETWEEN` muss `AttributeValueList` zwei `AttributeValue`-Elemente desselben Typs enthalten, und zwar Zeichenfolge, Zahl oder Binärzahl (keinen Satztyp). Es kommt zu einer Übereinstimmung mit dem Zielattribut, wenn der Zielwert größer als oder gleich dem ersten Element und kleiner als oder gleich dem zweiten Element ist. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` stimmt nicht mit `{"N":"6"}` überein. Auch entspricht `{"N":"6"}` nicht `{"NS":["6", "2", "1"]}`. |   | 
| ScanIndexForward | Gibt die auf- oder absteigende Traversierung des Index an. DynamoDB gibt Ergebnisse zurück, die der angeforderten Reihenfolge entsprechen, die vom Bereichsschlüssel bestimmt wird: Wenn der Datentyp „Zahl“ lautet, werden die Ergebnisse in numerischer Reihenfolge zurückgegeben, andernfalls basiert der Traversal auf ASCII-Zeichencodewerten.Typ: BooleschDer Standardwert ist `true` (aufsteigend). | Nein | 
| ExclusiveStartKey | Der Primärschlüssel des Elements, von dem eine frühere Abfrage fortgesetzt wird. Eine frühere Abfrage kann diesen Wert als `LastEvaluatedKey` bereitstellen, wenn diese Abfrage-Operation vor Abschluss unterbrochen wurde – entweder aufgrund der Größe des Ergebnissatzes oder aufgrund des `Limit`-Parameters. Der `LastEvaluatedKey` kann in einer neuen Abfrageanforderung zurückgegeben werden, um die Operation von diesem Punkt fortzusetzen.Typ: `HashKeyElement` oder `HashKeyElement` und `RangeKeyElement` für einen zusammengesetzten Primärschlüssel. | Nein | 

## Antworten
<a name="API_Query_ResponseElements"></a>

### Syntax
<a name="API_Query_ResponseElements.syntax"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0
content-length: 308

{"Count":2,"Items":[{
    "AttributeName1":{"S":"AttributeValue1"},
    "AttributeName2":{"N":"AttributeValue2"},
    "AttributeName3":{"S":"AttributeValue3"}
    },{
    "AttributeName1":{"S":"AttributeValue3"},
    "AttributeName2":{"N":"AttributeValue4"},
    "AttributeName3":{"S":"AttributeValue3"},
    "AttributeName5":{"B":"dmFsdWU="}
}],
    "LastEvaluatedKey":{"HashKeyElement":{"AttributeValue3":"S"},
                        "RangeKeyElement":{"AttributeValue4":"N"}
     },
     "ConsumedCapacityUnits":1
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
| Items  | Elementattribute, die den Abfrageparametern entsprechen.Typ: Zuordnung der Attributnamen und ihrer Datentypen und Werte. | 
| Count  |  Anzahl der Elemente in der Antwort. Weitere Informationen finden Sie unter [Zählen der Elemente in den Ergebnissen](Query.Other.md#Query.Count). Typ: Zahl  | 
| LastEvaluatedKey | Primärschlüssel des Elements, an dem die Abfrage-Operation beendet wurde, einschließlich des vorherigen Ergebnissatzes. Verwenden Sie diesen Wert, um eine neue Operation ohne diesen Wert in der neuen Anforderung zu starten.Der `LastEvaluatedKey` ist `null`, wenn der Ergebnissatz der Abfrage vollständig ist (das heißt, wenn die "letzte Seite" von der Operation verarbeitet wurde). Typ: `HashKeyElement` oder `HashKeyElement` und `RangeKeyElement` für einen zusammengesetzten Primärschlüssel. | 
| ConsumedCapacityUnits | Die Anzahl der Lesekapazitätseinheiten, die von der Operation verbraucht werden. Dieser Wert zeigt die Anzahl, die für Ihren bereitgestellten Durchsatz gültig ist. Weitere Informationen finden Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md). Typ: Zahl | 

## Spezielle Fehler
<a name="API_Query_SpecialErrors"></a>


****  

|  Fehler  |  Beschreibung  | 
| --- | --- | 
| ResourceNotFoundException  | Die angegebene Tabelle wurde nicht gefunden. | 

## Beispiele
<a name="API_Query_Examples"></a>

 Beispiele für die Verwendung des AWS SDK finden Sie unter [Abfragen von Tabellen in DynamoDB](Query.md).

### Beispielanforderung
<a name="API_Query_Examples_Request"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Query  
content-type: application/x-amz-json-1.0

{"TableName":"1-hash-rangetable",
	"Limit":2,
	"HashKeyValue":{"S":"John"},
	"ScanIndexForward":false,
	"ExclusiveStartKey":{
		"HashKeyElement":{"S":"John"},
		"RangeKeyElement":{"S":"The Matrix"}
	}
}
```

### Beispielantwort
<a name="API_Query_Examples_Response"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 3647e778-71eb-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0
content-length: 308

{"Count":2,"Items":[{
	"fans":{"SS":["Jody","Jake"]},
	"name":{"S":"John"},
	"rating":{"S":"***"},
	"title":{"S":"The End"}
	},{
	"fans":{"SS":["Jody","Jake"]},
	"name":{"S":"John"},
	"rating":{"S":"***"},
	"title":{"S":"The Beatles"}
	}],
	"LastEvaluatedKey":{"HashKeyElement":{"S":"John"},"RangeKeyElement":{"S":"The Beatles"}},
"ConsumedCapacityUnits":1
}
```

### Beispielanforderung
<a name="API_Query_Examples_Request2"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Query 
content-type: application/x-amz-json-1.0
 
{"TableName":"1-hash-rangetable",
	"Limit":2,
	"HashKeyValue":{"S":"Airplane"},
	"RangeKeyCondition":{"AttributeValueList":[{"N":"1980"}],"ComparisonOperator":"EQ"},
	"ScanIndexForward":false}
```

### Beispielantwort
<a name="API_Query_Examples_Response2"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 8b9ee1ad-774c-11e0-9172-d954e38f553a
content-type: application/x-amz-json-1.0
content-length: 119 
 
{"Count":1,"Items":[{
	"fans":{"SS":["Dave","Aaron"]},
	"name":{"S":"Airplane"},
	"rating":{"S":"***"},
	"year":{"N":"1980"}
	}],
"ConsumedCapacityUnits":1
}
```

## Zugehörige Aktionen
<a name="API_Query_Related_Actions"></a>
+  [Scan](API_Scan_v20111205.md) 

# Scan
<a name="API_Scan_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_Scan_Description"></a>

Die `Scan`-Operation gibt ein oder mehrere Elemente mit zugehörigen Attributen zurück, indem sie einen vollständigen Scan einer Tabelle durchführt. Geben Sie einen `ScanFilter` an, um spezifischere Ergebnisse zu erhalten. 

**Anmerkung**  
Wenn die Gesamtanzahl der gescannten Elemente den Grenzwert von 1 MB überschreitet, wird der Scan beendet und die Ergebnisse werden an den Benutzer mit einem `LastEvaluatedKey` zurückgegeben, um den Scan in einer nachfolgenden Operation fortzusetzen. Die Ergebnisse enthalten auch die Anzahl der Elemente, die den Grenzwert überschreiten. Ein Scan kann dazu führen, dass keine der Tabellendaten die Filterkriterien erfüllen.   
Der Ergebnissatz ist letztlich konsistent. 

## Anforderungen
<a name="API_Scan_RequestParameters"></a>

### Syntax
<a name="API_Scan_RequestParameters.syntax"></a>

```
// This header is abbreviated.
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Scan  
content-type: application/x-amz-json-1.0

{"TableName":"Table1",
    "Limit": 2,
    "ScanFilter":{
        "AttributeName1":{"AttributeValueList":[{"S":"AttributeValue"}],"ComparisonOperator":"EQ"}
    },
    "ExclusiveStartKey":{
        "HashKeyElement":{"S":"AttributeName1"},
        "RangeKeyElement":{"N":"AttributeName2"}
    },
    "AttributesToGet":["AttributeName1", "AttributeName2", "AttributeName3"]},
}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |  Der Name der Tabelle, die die angeforderten Elemente enthält. **Typ:** Zeichenfolge  |  Ja  | 
| AttributesToGet  | Array von Attributnamen. Wenn Attributnamen nicht angegeben sind, dann werden alle Attribute zurückgegeben. Wenn einige Attribute nicht gefunden werden, sind sie nicht im Abfrageergebnis enthalten.Typ: Array | Nein | 
| Limit  | Die maximale Anzahl der auszuwertenden Elemente (nicht notwendigerweise die Anzahl der übereinstimmenden Elemente). Wenn DynamoDB bei der Ergebnisverarbeitung die Anzahl der Elemente bis zum Grenzwert verarbeitet, wird der Vorgang beendet und es werden die bis zu diesem Punkt übereinstimmenden Werte zurückgegeben. Außerdem wird ein `LastEvaluatedKey` ausgegeben, der bei einer nachfolgenden Operation angewendet wird, um weitere Elemente abzurufen. Wenn die gescannten Daten 1 MB überschreiten, bevor DynamoDB diesen Grenzwert erreicht, wird der Scan beendet und es werden die bis zu diesem Grenzwert übereinstimmenden Werte zurückgegeben. Außerdem wird ein`LastEvaluatedKey` ausgegeben, der bei einer nachfolgenden Operation angewendet wird, um mit dem Scan fortzufahren.Typ: Zahl | Nein | 
| Count  | Wenn die Option auf `true` gesetzt ist, gibt DynamoDB für die Scan-Operation alle Elemente zurück, auch wenn die Operation keine übereinstimmenden Elemente für den zugeordneten Filter ergibt. Sie können den Limit-Parameter auf Scans anwenden, die nur zählen.  Setzen Sie `Count` nicht auf `true`, wenn Sie eine Liste von `AttributesToGet` bereitstellen, sonst gibt DynamoDB einen Validierungsfehler zurück. Weitere Informationen finden Sie unter [Zählen der Elemente in den Ergebnissen](Scan.md#Scan.Count).Typ: Boolesch | Nein | 
| ScanFilter  | Wertet die Scanergebnisse aus und gibt nur die gewünschten Werte zurück. Mehrere Bedingungen werden als "AND"-Operationen behandelt, das heißt, alle Bedingungen müssen erfüllt sein, damit sie in den Ergebnissen berücksichtigt werden. Typ: Zuordnung von Attributnamen zu Werten mit Vergleichsoperatoren. | Nein | 
| ScanFilter:AttributeValueList | Die Werte und Bedingungen für die Auswertung der Scan-Ergebnisse für den Filter.Typ: Zuordnung von `AttributeValue` zu einer `Condition`. | Nein | 
| ScanFilter:​ ComparisonOperator | Die Kriterien für die Bewertung der bereitgestellten Attribute, z. B. gleich, größer als usw. Die folgenden Operatoren sind gültige Vergleichsoperatoren für eine Scan-Operation. Vergleiche von Zeichenfolgenwerten für größer als, gleich oder kleiner als basieren auf ASCII-Zeichensatzwerten. Beispiel: `a` ist größer als `A` und `aa` ist größer als `B`. Eine Liste von Codewerten finden Sie unter [http://en.wikipedia.org/wiki/ASCII\$1ASCII\$1printable\$1characters](http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). Beim Binärtyp behandelt DynamoDB jedes Byte der Binärdaten als ohne Vorzeichen, wenn binäre Werte verglichen werden (z. B. bei der Bewertung von Abfrageausdrücken).   Typ: Zeichenfolge oder Binärzahl  | Nein | 
|   | `EQ` : gleich. Bei `EQ` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch, `{"N":"6"}` ist nicht gleich `{"NS":["6", "2", "1"]}`. |   | 
|   | `NE`: nicht gleich. Bei `NE` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch, `{"N":"6"}` ist nicht gleich `{"NS":["6", "2", "1"]}`. |   | 
|   | `LE` : kleiner als oder gleich. Bei `LE` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch, `{"N":"6"}` entspricht nicht `{"NS":["6", "2", "1"]}`. |   | 
|   | `LT` : kleiner als. Bei `LT` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch, `{"N":"6"}` entspricht nicht `{"NS":["6", "2", "1"]}`. |   | 
|   | `GE` : größer als oder gleich. Bei `GE` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch entspricht `{"N":"6"}` nicht `{"NS":["6", "2", "1"]}`. |   | 
|   | `GT` : größer als. Bei `GT` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` ist nicht gleich `{"N":"6"}`. Auch entspricht `{"N":"6"}` nicht `{"NS":["6", "2", "1"]}`. |   | 
|   | `NOT_NULL`: Attribut ist vorhanden.  |   | 
|   | `NULL`: Attribut ist nicht vorhanden.  |   | 
|   | `CONTAINS`: Prüft auf eine Teilsequenz oder einen Wert in einem Satz. Bei `CONTAINS` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn das Zielattribut des Vergleichs eine Zeichenfolge ist, dann prüft die Operation, ob eine Teilzeichenfolge übereinstimmt. Wenn das Zielattribut des Vergleichs vom Typ Binärzahl ist, sucht die Operation nach einer Teilsequenz des Ziels, die mit der Eingabe übereinstimmt. Wenn das Zielattribut des Vergleichs ein Satz ist ("SS", "NS" oder "BS"), prüft die Operation auf ein Mitglied des Satzes (nicht als Teilzeichenfolge). |   | 
|   | `NOT_CONTAINS`: Prüft auf fehlende Teilsequenz oder fehlenden Wert in einem Satz. Bei `NOT_CONTAINS` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Wenn das Zielattribut des Vergleichs eine Zeichenfolge ist, dann prüft die Operation, ob die Übereinstimmung einer Teilzeichenfolge fehlt. Wenn das Zielattribut des Vergleichs vom Typ Binärzahl ist, prüft die Operation, ob eine Teilsequenz des Ziels, die mit der Eingabe übereinstimmt, fehlt. Wenn das Zielattribut des Vergleichs ein Satz ist ("SS", "NS" oder "BS"), prüft die Operation, ob ein Mitglied des Satzes fehlt (nicht als Teilzeichenfolge). |   | 
|   | `BEGINS_WITH`: Prüft auf ein Präfix. Bei `BEGINS_WITH` kann `AttributeValueList` nur einen `AttributeValue` vom Typ Zeichenfolge oder Binärzahl (keine Zahl bzw. keinen Satz) enthalten. Das Zielattribut des Vergleichs muss vom Typ Zeichenfolge oder Binärzahl sein (keine Zahl bzw. kein Satz). |   | 
|   | `IN`: Prüft auf genaue Übereinstimmungen. Bei `IN` kann `AttributeValueList` mehr als einen `AttributeValue` vom Typ Zeichenfolge, Zahl oder Binärzahl (keinen Satz) enthalten. Das Zielattribut des Vergleichs muss vom selben Typ sein und mit dem genauen Wert übereinstimmen. Eine Zeichenfolge stimmt niemals mit einem Zeichenfolgensatz überein. |   | 
|   | `BETWEEN`: Größer als oder gleich dem ersten Wert und kleiner als oder gleich dem zweiten Wert. Für `BETWEEN` muss `AttributeValueList` zwei `AttributeValue`-Elemente desselben Typs enthalten, und zwar Zeichenfolge, Zahl oder Binärzahl (keinen Satztyp). Es kommt zu einer Übereinstimmung mit dem Zielattribut, wenn der Zielwert größer als oder gleich dem ersten Element und kleiner als oder gleich dem zweiten Element ist. Wenn ein Element einen `AttributeValue` eines anderen Typs enthält, als in der Anforderung angegeben, stimmt der Wert nicht überein. Beispiel: `{"S":"6"}` stimmt nicht mit `{"N":"6"}` überein. Auch entspricht `{"N":"6"}` nicht `{"NS":["6", "2", "1"]}`. |   | 
| ExclusiveStartKey | Der Primärschlüssel des Elements, von dem ein früherer Scan fortgesetzt wird. Ein früherer Scan kann diesen Wert bereitstellen, wenn diese Scan-Operation unterbrochen wurde, bevor die ganze Tabelle gescannt wurde – entweder aufgrund der Größe des Ergebnissatzes oder aufgrund des `Limit`-Parameters. Der `LastEvaluatedKey` kann in einer neuen Scan-Anforderung zurückgegeben werden, um die Operation von diesem Punkt fortzusetzen.Typ: `HashKeyElement` oder `HashKeyElement` und `RangeKeyElement` für einen zusammengesetzten Primärschlüssel. | Nein | 

## Antworten
<a name="API_Scan_ResponseElements"></a>

### Syntax
<a name="API_Scan_ResponseElements.syntax"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0
content-length: 229 

{"Count":2,"Items":[{
    "AttributeName1":{"S":"AttributeValue1"},
    "AttributeName2":{"S":"AttributeValue2"},
    "AttributeName3":{"S":"AttributeValue3"}
    },{
    "AttributeName1":{"S":"AttributeValue4"},
    "AttributeName2":{"S":"AttributeValue5"},
    "AttributeName3":{"S":"AttributeValue6"},
    "AttributeName5":{"B":"dmFsdWU="}
    }],
    "LastEvaluatedKey":
        {"HashKeyElement":{"S":"AttributeName1"},
        "RangeKeyElement":{"N":"AttributeName2"},
    "ConsumedCapacityUnits":1,
    "ScannedCount":2}
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
| Items  | Container für die Attribute, die mit den Operationsparametern übereinstimmen.Typ: Zuordnung der Attributnamen und ihrer Datentypen und Werte. | 
| Count  |  Anzahl der Elemente in der Antwort. Weitere Informationen finden Sie unter [Zählen der Elemente in den Ergebnissen](Scan.md#Scan.Count). Typ: Zahl  | 
| ScannedCount  | Anzahl der Elemente im vollständigen Scan, bevor Filter angewendet werden. Ein hoher `ScannedCount`-Wert mit wenigen oder gar keinen `Count`-Ergebnissen weist auf eine ineffiziente Scan-Operation hin. Weitere Informationen finden Sie unter [Zählen der Elemente in den Ergebnissen](Scan.md#Scan.Count).Typ: Zahl | 
| LastEvaluatedKey | Der Primärschlüssel des Elements, an dem die Scan-Operation beendet wurde. Stellen Sie diesen Wert in einer nachfolgenden Scan-Operation bereit, um die Operation von diesem Punkt fortzusetzen.Der `LastEvaluatedKey` ist `null`, wenn der Ergebnissatz der Scan-Operation vollständig ist (das heißt, wenn die "letzte Seite" von der Operation verarbeitet wurde).  | 
| ConsumedCapacityUnits | Die Anzahl der Lesekapazitätseinheiten, die von der Operation verbraucht werden. Dieser Wert zeigt die Anzahl, die für Ihren bereitgestellten Durchsatz gültig ist. Weitere Informationen finden Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md). Typ: Zahl | 

## Spezielle Fehler
<a name="API_Scan_SpecialErrors"></a>


****  

|  Fehler  |  Beschreibung  | 
| --- | --- | 
| ResourceNotFoundException  | Die angegebene Tabelle wurde nicht gefunden. | 

## Beispiele
<a name="API_Scan_Examples"></a>

Beispiele für die Verwendung des AWS SDK finden Sie unter [Scannen von Tabellen in DynamoDB](Scan.md).

### Beispielanforderung
<a name="API_Scan_Examples_Request"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Scan 
content-type: application/x-amz-json-1.0

{"TableName":"1-hash-rangetable","ScanFilter":{}}
```

### Beispielantwort
<a name="API_Scan_Examples_Response"></a>

```
HTTP/1.1 200
x-amzn-RequestId: 4e8a5fa9-71e7-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0 
content-length: 465 

{"Count":4,"Items":[{
	"date":{"S":"1980"},
	"fans":{"SS":["Dave","Aaron"]},
	"name":{"S":"Airplane"},
	"rating":{"S":"***"}
	},{
	"date":{"S":"1999"},
	"fans":{"SS":["Ziggy","Laura","Dean"]},
	"name":{"S":"Matrix"},
	"rating":{"S":"*****"}
	},{
	"date":{"S":"1976"},
	"fans":{"SS":["Riley"]},"
	name":{"S":"The Shaggy D.A."},
	"rating":{"S":"**"}
	},{
	"date":{"S":"1985"},
	"fans":{"SS":["Fox","Lloyd"]},
	"name":{"S":"Back To The Future"},
	"rating":{"S":"****"}
	}],
    "ConsumedCapacityUnits":0.5
	"ScannedCount":4}
```

### Beispielanforderung
<a name="API_Scan_Examples_Request2"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Scan 
content-type: application/x-amz-json-1.0
content-length: 125 

{"TableName":"comp5",
	"ScanFilter":
		{"time":
			{"AttributeValueList":[{"N":"400"}],
			"ComparisonOperator":"GT"}
	}
}
```

### Beispielantwort
<a name="API_Scan_Examples_Response2"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: PD1CQK9QCTERLTJP20VALJ60TRVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 262
Date: Mon, 15 Aug 2011 16:52:02 GMT

{"Count":2,
	"Items":[
		{"friends":{"SS":["Dave","Ziggy","Barrie"]},
		"status":{"S":"chatting"},
		"time":{"N":"2000"},
		"user":{"S":"Casey"}},
		{"friends":{"SS":["Dave","Ziggy","Barrie"]},
		"status":{"S":"chatting"},
		"time":{"N":"2000"},
		"user":{"S":"Fredy"}
		}],
"ConsumedCapacityUnits":0.5
"ScannedCount":4
}
```

### Beispielanforderung
<a name="API_Scan_Examples_Request3"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Scan
content-type: application/x-amz-json-1.0

{"TableName":"comp5",
	"Limit":2,
	"ScanFilter":
		{"time":
			{"AttributeValueList":[{"N":"400"}],
			"ComparisonOperator":"GT"}
	},
	"ExclusiveStartKey":
		{"HashKeyElement":{"S":"Fredy"},"RangeKeyElement":{"N":"2000"}}
}
```

### Beispielantwort
<a name="API_Scan_Examples_Response3"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: PD1CQK9QCTERLTJP20VALJ60TRVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 232
Date: Mon, 15 Aug 2011 16:52:02 GMT

{"Count":1,
	"Items":[
		{"friends":{"SS":["Jane","James","John"]},
		"status":{"S":"exercising"},
		"time":{"N":"2200"},
		"user":{"S":"Roger"}}
	],
	"LastEvaluatedKey":{"HashKeyElement":{"S":"Riley"},"RangeKeyElement":{"N":"250"}},
"ConsumedCapacityUnits":0.5
"ScannedCount":2
}
```

## Zugehörige Aktionen
<a name="API_Scan_Related_Actions"></a>
+  [Abfrage](API_Query_v20111205.md) 
+  [BatchGetItem](API_BatchGetItem_v20111205.md) 

# UpdateItem
<a name="API_UpdateItem_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_UpdateItem_Description"></a>

Bearbeitet Attribute eines existierenden Elements. Sie können eine bedingte Aktualisierung durchführen (fügen Sie ein neues Attributnamen-Wert-Paar ein, wenn es noch nicht vorhanden ist, oder ersetzen Sie ein vorhandenes Namen-Wert-Paar, wenn es über bestimmte zu erwartende Attributwerte verfügt).

**Anmerkung**  
Sie können die Primärschlüsselattribute mit UpdateItem nicht aktualisieren. Löschen Sie stattdessen das Element und verwenden Sie PutItem zum Erstellen eines neuen Elements mit neuen Attributen.

Die UpdateItem-Operation enthält den Parameter `Action`, der festlegt, wie die Aktualisierung durchgeführt wird. Sie können Attributwerte hinzufügen, löschen oder setzen. 

Attributwerte dürfen nicht Null sein, Zeichenketten- und Binärtypattribute müssen Längen haben, die größer als Null sind, und festgelegte Typattribute dürfen nicht leer sein. Anfragen mit leeren Werten werden mit einer `ValidationException` abgelehnt.

Wenn ein vorhandenes Element über den angegebenen Primärschlüssel verfügt: 
+ **PUT –** Fügt das angegebene Attribut hinzu. Wenn das Attribut vorhanden ist, wird es durch den neuen Wert ersetzt. 
+ **DELETE –** Ist kein Wert angegeben, wird dadurch das Attribut und sein Wert entfernt. Wenn eine Menge von Werten angegeben wird, werden die Werte in dem angegebenen Satz aus dem alten Satz entfernt. Wenn also der Attributwert [a,b,c] und die Löschaktion [a,c] enthält, dann ist der tatsächliche Attributwert [b]. Der Typ des angegebenen Werts muss dem vorhandenen Werttyp entsprechen. Einen leeren Satz anzugeben ist nicht gültig.
+ **ADD –** Verwendung der Add-Aktion nur für Zahlen oder wenn das Zielattribut ein Satz ist (einschließlich Zeichenkettensätze). ADD funktioniert nicht, falls das Zielattribut ein einzelner Zeichenkettenwert oder ein skalarer Binärwert ist. Der angegebene Wert wird einem numerischen Wert hinzugefügt (Erhöhen oder Verringern des vorhandenen numerischen Werts) oder als zusätzlichen Wert in einem Zeichenkettensatz hinzugefügt. Wenn ein Menge von Werten angegeben wird, werden die Werte dem vorhandenen Satz hinzugefügt. Zum Beispiel, wenn der ursprüngliche Satz [1,2] ist und der bereitgestellte Wert [3] ist, dann ist der Satz nach dem Add-Vorgang [1,2,3] und nicht [4,5]. Ein Fehler tritt auf, wenn eine Add-Aktion für ein festgelegtes Attribut angegeben wird und der angegebene Attributtyp nicht mit dem vorhandenen festgelegten Typ übereinstimmt. 

  Wenn Sie ADD für ein Attribut verwenden, das nicht existiert, wird das Attribut und seine Werte dem Element hinzugefügt.

Wenn kein Element mit dem angegebenen Primärschlüssel übereinstimmt: 
+ **PUT –** Erstellt ein neues Element mit dem angegebenen Primärschlüssel. Fügt dann das angegebene Attribut hinzu. 
+ **DELETE –** Nichts passiert. 
+ **ADD –** Erstellt ein Element mit einem bereitgestellten Primärschlüssel und einer Zahl (oder eine Menge von Zahlen) für den Attributwert. Nicht gültig für einen Zeichenkette- oder Binärtyp. 

**Anmerkung**  
Wenn Sie `ADD` einsetzen, um einen Zahlenwert für ein Element, das vor der Aktualisierung nicht vorhanden ist, zu erhöhen oder zu verringern, verwendet DynamoDB `0` als Anfangswert. Wenn Sie außerdem ein Element aktualisieren, indem Sie `ADD` verwenden, um einen Zahlenwert für ein Attribut zu erhöhen oder zu verringern, das vor der Aktualisierung nicht vorhanden ist (das Element ist jedoch vorhanden), verwendet DynamoDB die `0` als Anfangswert. Beispiel: Sie verwenden `ADD`, um `+3` einem Attribut hinzuzufügen, das vor der Aktualisierung nicht vorhanden war. DynamoDB verwendet `0` für den ersten Wert und der Wert nach der Aktualisierung ist `3`. 

Weitere Informationen zur Verwendung dieser Operation finden Sie unter [Arbeiten mit Elementen und Attributen in DynamoDB](WorkingWithItems.md). 

## Anforderungen
<a name="API_UpdateItem_RequestParameters"></a>

### Syntax
<a name="API_UpdateItem_RequestParameters.syntax"></a>

```
// This header is abbreviated.
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.UpdateItem
content-type: application/x-amz-json-1.0

{"TableName":"Table1",
    "Key":
        {"HashKeyElement":{"S":"AttributeValue1"},
        "RangeKeyElement":{"N":"AttributeValue2"}},
    "AttributeUpdates":{"AttributeName3":{"Value":{"S":"AttributeValue3_New"},"Action":"PUT"}},
    "Expected":{"AttributeName3":{"Value":{"S":"AttributeValue3_Current"}}},
    "ReturnValues":"ReturnValuesConstant"
}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |  Der Name der Tabelle, die das zu aktualisierende Element enthält.  **Typ:** Zeichenfolge  |  Ja  | 
|  Key  | Der Primärschlüssel, der das Element definiert. Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).Typ: Zuordnung von `HashKeyElement` zu seinem Wert und von `RangeKeyElement` zu seinem Wert. | Ja | 
| AttributeUpdates | Zuordnung des Attributnamens zu dem neuen Wert und der neuen Aktion für die Aktualisierung. Die Attributnamen legen die zu ändernden Attribute fest und können keine Primärschlüsselattribute enthalten.Typ: Zuordnung eines Attributnamens, eines Werts und einer Aktion für die Aktualisierung des Attributs. |  | 
| AttributeUpdates:Action | Gibt an, wie die Aktualisierung durchzuführen ist. Mögliche Werte: `PUT` (Standard) `ADD` oder `DELETE`. Die Semantiken finden Sie in der UpdateItem-Beschreibung.**Typ:** ZeichenfolgeStandard: `PUT` | Nein | 
| Expected  | Gibt ein Attribut für eine bedingte Aktualisierung an. Der Parameter `Expected` erlaubt es Ihnen, einen Attributnamen anzugeben und festzulegen, ob DynamoDB überprüfen soll, ob der Attributwert bereits vorhanden ist bzw. ob der Attributwert vorhanden ist und über einen bestimmten Wert verfügt, bevor er geändert wird.Typ: Zuordnung von Attributnamen. | Nein | 
| Expected:AttributeName  | Der Name des Attributs für die bedingte Put-Operation.**Typ:** Zeichenfolge | Nein | 
| Expected:AttributeName: ExpectedAttributeValue | Verwenden Sie diesen Parameter, um anzugeben, ob ein Wert für das Attributname-Wert-Paar bereits vorhanden ist oder nicht. Die folgende JSON-Notation aktualisiert das Element, wenn das Attribut "Farbe" für dieses Element noch nicht vorhanden ist:<pre>"Expected" :<br />	{"Color":{"Exists":false}}</pre>Die folgende JSON-Notation prüft, ob das Attribut mit dem Namen "Farbe" über einen vorhandenen Wert für "Gelb" verfügt, bevor sie das Element aktualisiert: <pre>"Expected" : <br />	{"Color":{"Exists":true},{"Value":{"S":"Yellow"}}}</pre>Wenn Sie den Parameter `Expected` verwenden und einen `Value` angeben, geht DynamoDB standardmäßig davon aus, dass das Attribut vorhanden ist und einen zu ersetzenden aktuellen Wert hat. Sie müssen `{"Exists":true}` demnach nicht angeben, weil er enthalten ist. Sie können die Anforderung verkürzen, um:<pre>"Expected" : <br />	{"Color":{"Value":{"S":"Yellow"}}}</pre> Wenn Sie `{"Exists":true}` ohne einen zu prüfenden Attributwert angeben, gibt DynamoDB einen Fehler zurück.  | Nein | 
| ReturnValues  | Verwenden Sie diesen Parameter, wenn Sie die Attribut-Namen-Wert-Paare erhalten möchten, bevor sie mit der `UpdateItem`-Anforderung aktualisiert wurden. Mögliche Parameterwerte sind `NONE` (Standard) oder `ALL_OLD`, `UPDATED_OLD`, `ALL_NEW` oder `UPDATED_NEW`. Wenn `ALL_OLD` angegeben ist und ein Attribut-Namen-Wert-Paar durch `UpdateItem` überschrieben wurde, wird der Inhalt des alten Elements zurückgegeben. Wenn dieser Parameter nicht angegeben wird oder `NONE` ist, wird nichts zurückgegeben. Wenn `ALL_NEW` angegeben wird, werden alle Attribute der neuen Version des Elements zurückgegeben. Wenn `UPDATED_NEW` angegeben wird, werden ausschließlich die neuen Versionen der aktualisierten Attribute zurückgegeben.**Typ:** Zeichenfolge | Nein | 

## Antworten
<a name="API_UpdateItem_CommonResponseElements"></a>

### Syntax
<a name="API_UpdateItem_CommonResponseElements.syntax"></a>

In dem folgenden Syntax-Beispiel wird davon ausgegangen, dass die Anforderung für den Parameter `ReturnValues` `ALL_OLD` angegeben hat; andernfalls beinhaltet die Antwort nur das `ConsumedCapacityUnits`-Element.

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0
content-length: 140

{"Attributes":{
	"AttributeName1":{"S":"AttributeValue1"},
	"AttributeName2":{"S":"AttributeValue2"},
	"AttributeName3":{"S":"AttributeValue3"},
	"AttributeName5":{"B":"dmFsdWU="}
	},
"ConsumedCapacityUnits":1
}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
|  Attributes  | Eine Zuordnung von Attribut-Namen-Wert-Paaren, aber nur, wenn der Parameter `ReturnValues` in der Anforderung anders angegeben wird als `NONE`.Typ: Zuordnung von Attribut-Namen-Wert-Paare. | 
| ConsumedCapacityUnits | Die Anzahl der Schreibkapazitätseinheiten, die von dem Vorgang verbraucht werden. Dieser Wert zeigt die Anzahl, die für Ihren bereitgestellten Durchsatz gültig ist. Weitere Informationen finden Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md). Typ: Zahl | 

## Spezielle Fehler
<a name="API_UpdateItem_SpecialErrors"></a>


****  

|  Fehler  |  Beschreibung  | 
| --- | --- | 
|  ConditionalCheckFailedException  | Bedingte Prüfung fehlgeschlagen. Der Attributwert ("\$1 name \$1") ist ("\$1 value \$1"), aber ("\$1 expValue \$1") wurde erwartet  | 
| ResourceNotFoundExceptions  | Das angegebene Element oder Attribut wurde nicht gefunden. | 

## Beispiele
<a name="API_UpdateItem_Examples"></a>

Beispiele für die Verwendung des AWS SDK finden Sie unter [Arbeiten mit Elementen und Attributen in DynamoDB](WorkingWithItems.md).

### Beispielanforderung
<a name="API_UpdateItem_Examples_Request"></a>

```
// This header is abbreviated. For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.UpdateItem
content-type: application/x-amz-json-1.0 

{"TableName":"comp5",
    "Key":
        {"HashKeyElement":{"S":"Julie"},"RangeKeyElement":{"N":"1307654350"}},
    "AttributeUpdates":
        {"status":{"Value":{"S":"online"},
        "Action":"PUT"}},
    "Expected":{"status":{"Value":{"S":"offline"}}},
    "ReturnValues":"ALL_NEW"
}
```

### Beispielantwort
<a name="API_UpdateItem_Examples_Response"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: 5IMHO7F01Q9P7Q6QMKMMI3R3QRVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 121
Date: Fri, 26 Aug 2011 21:05:00 GMT

{"Attributes":
    {"friends":{"SS":["Lynda, Aaron"]},
    "status":{"S":"online"},
    "time":{"N":"1307654350"},
    "user":{"S":"Julie"}},
"ConsumedCapacityUnits":1
}
```

## Zugehörige Aktionen
<a name="API_UpdateItem_Related_Actions"></a>
+  [PutItem](API_PutItem_v20111205.md) 
+  [DeleteItem](API_DeleteItem_v20111205.md) 

# UpdateTable
<a name="API_UpdateTable_v20111205"></a>

**Wichtig**  
***Dieser Abschnitt bezieht sich auf die veraltete API-Version 2011-12-05, die nicht für neue Anwendungen verwendet werden sollte.***  
 **Eine Dokumentation zur aktuellen Low-Level-API finden Sie in der [Amazon DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Beschreibung
<a name="API_updatetable_Description"></a>

Aktualisiert den bereitgestellten Durchsatz für die jeweilige Tabelle. Das Festlegen des Durchsatzes für eine Tabelle unterstützt Sie beim Verwalten der Leistung und ist Teil der Funktion des bereitgestellten Durchsatzes von DynamoDB. Weitere Informationen finden Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md).

Die bereitgestellten Durchsatzwerte können basierend auf den Maximal- und Mindestwerten, aufgeführt in [Kontingente in Amazon DynamoDB](ServiceQuotas.md), aktualisiert oder herabgestuft werden.

Die Tabelle muss sich im Status `ACTIVE` befinden, damit diese Operation erfolgreich ist. "UpdateTable" ist eine asynchrone Operation; während der Ausführung der Operation befindet sich die Tabelle im Status `UPDATING`. Während sich die Tabelle im Status `UPDATING` befindet, verfügt sie weiterhin über den bereitgestellten Durchsatz von vor dem Aufruf. Die neue Einstellung des bereitgestellten Durchsatzes gilt nur, wenn die Tabelle nach der "UpdateTable"-Operation wieder in den Status `ACTIVE` zurückkehrt. 

## Anforderungen
<a name="API_UpdateTable_RequestParameters"></a>

### Syntax
<a name="API_UpdateTable_RequestParameters.syntax"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.UpdateTable
content-type: application/x-amz-json-1.0

{"TableName":"Table1",
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":15}
}
```


****  

|  Name  |  Beschreibung  |  Erforderlich | 
| --- | --- | --- | 
|  TableName  |  Der Name der zu erstellenden Tabelle.  **Typ:** Zeichenfolge   |  Ja  | 
|  ProvisionedThroughput  | Neuer Durchsatz für die angegebene Tabelle, bestehend aus Werten für `ReadCapacityUnits` und `WriteCapacityUnits`. Siehe [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md).Typ: Array  | Ja | 
| ProvisionedThroughput :ReadCapacityUnits |  Legt die Mindestanzahl von konsistenten `ReadCapacityUnits` fest, die pro Sekunde für die angegebene Tabelle verbraucht wird, bevor DynamoDB die Last mit anderen Operationen ausgleicht.  Eventually Consistent-Leseoperationen erfordern weniger Aufwand als Consistent-Leseoperationen. Daher stellt die Festlegung von 50 konsistenten `ReadCapacityUnits` pro Sekunde 100 Eventually Consistent-`ReadCapacityUnits` pro Sekunde bereit. Typ: Zahl  | Ja | 
| ProvisionedThroughput :WriteCapacityUnits |  Legt die Mindestanzahl von `WriteCapacityUnits` fest, die pro Sekunde für die angegebene Tabelle verbraucht wird, bevor DynamoDB die Last mit anderen Operationen ausgleicht. Typ: Zahl  | Ja | 

## Antworten
<a name="API_UpdateTable_ResponseElements"></a>

### Syntax
<a name="API_UpdateTable_ResponseElements.syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG
Content-Type: application/json
Content-Length: 311
Date: Tue, 12 Jul 2011 21:31:03 GMT

{"TableDescription":
    {"CreationDateTime":1.321657838135E9,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"AttributeValue1","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"AttributeValue2","AttributeType":"N"}},
    "ProvisionedThroughput":
        {"LastDecreaseDateTime":1.321661704489E9,
        "LastIncreaseDateTime":1.321663607695E9,
        "ReadCapacityUnits":5,
        "WriteCapacityUnits":10},
    "TableName":"Table1",
    "TableStatus":"UPDATING"}}
```


****  

|  Name  |  Beschreibung  | 
| --- | --- | 
| CreationDateTime | Das Datum, an dem die Tabelle erstellt wurde.Typ: Zahl | 
|  KeySchema  | Die Struktur (einfach oder zusammengesetzt) des Primärschlüssels für die Tabelle. Ein Name-Wert-Paar ist für das `HashKeyElement` und optional für das `RangeKeyElement` erforderlich (nur für zusammengesetzte Primärschlüssel erforderlich). Die maximale Hash-Schlüsselgröße ist 2048 Byte. Die maximale Range-Schlüsselgröße ist 1024 Byte. Beide Grenzen werden separat durchgesetzt (d. h. Sie können einen kombinierten Hash \$1 Range 2048 \$1 1024-Schlüssel haben). Weitere Informationen zu Primärschlüsseln finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).Typ: Zuordnung von `HashKeyElement` oder `HashKeyElement` und `RangeKeyElement` für einen zusammengesetzten Primärschlüssel. | 
| ProvisionedThroughput | Aktuelle Durchsatzeinstellungen für die angegebene Tabelle, einschließlich Werte für `LastIncreaseDateTime` (falls zutreffend), `LastDecreaseDateTime` (falls zutreffend), Typ: Array  | 
|  TableName  |  Der Name der aktualisierten Tabelle. **Typ:** Zeichenfolge  | 
|  TableStatus  | Der aktuelle Status der Tabelle (CREATING, ACTIVE, DELETING oder UPDATING), der UPDATING sein sollte. Verwenden Sie die [DescribeTables](API_DescribeTables_v20111205.md)-Operation, um den Status der Tabelle zu überprüfen. **Typ:** Zeichenfolge | 

## Spezielle Fehler
<a name="API_UpdateTable_SpecialErrors"></a>


****  

|  Fehler  |  Beschreibung  | 
| --- | --- | 
| ResourceNotFoundException  | Die angegebene Tabelle wurde nicht gefunden.  | 
| ResourceInUseException | Die Tabelle befindet sich nicht im Status ACTIVE. | 

## Beispiele
<a name="API_UpdateTable_Examples"></a>

### Beispielanforderung
<a name="API_UpdateTable_Examples_Request"></a>

```
// This header is abbreviated. 
// For a sample of a complete header, see DynamoDB Low-Level-API.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.UpdateTable
content-type: application/x-amz-json-1.0

{"TableName":"comp1",
    "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":15}
}
```

### Beispielantwort
<a name="API_UpdateTable_Examples_Response"></a>

```
HTTP/1.1 200 OK
content-type: application/x-amz-json-1.0
content-length: 390
Date: Sat, 19 Nov 2011 00:46:47 GMT

{"TableDescription":
    {"CreationDateTime":1.321657838135E9,
    "KeySchema":
        {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"},
        "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}},
    "ProvisionedThroughput":
        {"LastDecreaseDateTime":1.321661704489E9,
        "LastIncreaseDateTime":1.321663607695E9,
        "ReadCapacityUnits":5,
        "WriteCapacityUnits":10},
    "TableName":"comp1",
    "TableStatus":"UPDATING"}
}
```

## Zugehörige Aktionen
<a name="API_UpdateTable_Related_Actions"></a>
+  [CreateTable](API_CreateTable_v20111205.md) 
+  [DescribeTables](API_DescribeTables_v20111205.md) 
+  [DeleteTable](API_DeleteTable_v20111205.md) 