Ho un attributo DynamoDB il cui valore è una mappa da Numero a stringa. Sto cercando di inserire una nuova coppia chiave-valore. Da quello che ho letto, sembra possibile, ma non so come.Come inserire una nuova coppia chiave-valore in una mappa in DynamoDB? (java)
presumo la soluzione è simile a quello nel link qui sotto:
How to update a Map or a List on AWS DynamoDB document API?
Ma non credo che l'esempio è sul mettere in un nuovo elemento a una mappa. Qualcuno potrebbe mostrarmi come inserire un oggetto in una mappa?
Grazie.
EDIT:
Non voglio ottenere l'oggetto, a livello locale apportare le modifiche, e rimetterlo. Sto lavorando con più clienti che potrebbero interagire contemporaneamente (e presumo che l'aggiornamento di dynamo assicuri che non ci saranno condizioni di gara).
approccio Nizza, ma che dire quando non c'è precedente 'campo map' all'interno dinamo? getta 'Il percorso del documento fornito nell'espressione di aggiornamento non è valido per l'aggiornamento' se si tenta di aggiornare un nuovo record, non riesco a trovare un modo per creare un nuovo elemento se il campo in precedenza non esiste, alcun aiuto? – user2976753
Condiziona l'aggiornamento su "attribute_exists (map) e attribute_not_exists (map. # Number)", quindi visualizza l'eccezione di controllo condizionale non riuscita e prova una richiesta updateItem differente da SET map =: m, attribute_not_exists (map). Ricorda, puoi sempre pre creare l'oggetto con una mappa vuota! –
grazie. Non pensavo di poter aggiungere un nuovo attributo e valore a una mappa. teneva aggiunto l'attributo al tavolo. poi ho visto come hai indicato il percorso per la mappa (mappa # numero) nell'esempio sopra. ora il mio codice funziona! Grazie. –