2017-09-21 6 views
0

können wir mehrere Datensätze in dynamo db nur über Bereichsschlüssel löschen?Löschen mehrerer Datensätze in dynamo db

Ich versuche, wie diese sql-Anweisung löschen von Mitarbeiter wo employee_name = 'gopal'; so hier die Datensätze mit Mitarbeiternamen gopal sollte gelöscht werden

können wir das gleiche wie diese SQL-Abfrage in dynamo db erreichen?

Antwort

0

Basierend auf der API gibt es keine Batch-Löschung für DynamoDB.

http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/DynamoDB.html

Sie müssen den Artikel abzufragen und mit ihren Partitionsschlüssel löschen.

ich empfehlen würde bei ODM suchen,

https://github.com/clarkie/dynogels

die Operationen einfacher zu machen.

überprüfen Sie die Probe Anrufe zum Löschen aus,

Account.destroy('[email protected]', function (err) { 
    console.log('account deleted'); 
}); 

// Destroy model using hash and range key 
BlogPost.destroy('[email protected]', 'Hello World!', function (err) { 
    console.log('post deleted') 
}); 

BlogPost.destroy({email: '[email protected]', title: 'Another Post'}, function (err) { 
    console.log('another post deleted') 
}); 
1

würden Sie haben ein BatchWriteItem zu tun, um Ihre Artikel zu löschen. From the documentation:

BatchWriteItem und

+0

Der war gut. Aber Sie müssen noch für den Datensatz abfragen und geben Sie ihren Partitionsschlüssel zum Löschen an.Gute Suche in BatchWriteItem, API-Name ist nicht offensichtlich, um seine Operation zu unterscheiden. – Kannaiyan

0

@Kannaiyan Dank für Ihre Kommentare löschen ....

i gefunden

DeleteItemSpec deleteItemSpec = die Lösung mit DynamoDB mit Java http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/JavaDocumentAPICRUDExample.html

leistet sind new DeleteItemSpec(). withPrimaryKey ("Id", 120) .withConditionExpression ("# ip =: val"). mitNameMap (new NameMap(). wit h ("# ip", "InPublication")) . withValueMap (neue ValueMap() .withBoolean (": val", false)). WithReturnValues ​​(ReturnValue.ALL_OLD);

Abrufen der Datensätze mit Schlüssel, Wert-Paar und das Speichern in „withValueMap (neu ValueMap()“ und das hilft mir.

Dank.

Verwandte Themen