0

clojure のロータリー クライアントを使用して amazons DynamoDB をテストしていますが、セットの挿入に問題があります。

たとえば、

(put-item aws-cred "MyTbl" {"id" 123 "abc" "something "bcd" 42})

それはうまく動作します。AWS Explore テーブルでフィールドを確認できます。

(get-item aws-cred "MyTbl" 123)

しかし、セットを挿入する方法がわかりません (DynamoDB は文字列セットと数値セットの両方をサポートしています)。AWS Explore Tables で手動でプロパティをセットに設定することで、これを確認しました。

私はもう試した

(put-item aws-cred "MyTbl" {"id" 123 "abc" #{"A" "B"}})

(put-item aws-cred "MyTbl" {"id" 123 "abc" ["A" "B"]})

(put-item aws-cred "MyTbl" {"id" 123 "abc" '("A" "B")})

(put-item aws-cred "MyTbl" {"id" 123 "abc" (java.util.ArrayList. ["A" "B"])})

それらはすべて成功しますが、ID 以外のテーブルには何もありません。手動で入力した行で get-item を実行すると、セットがそのタイプとして返​​されるため、最後のバージョンを試しました。

誰かがこれを行うことができましたか?

ありがとう。

4

1 に答える 1

0

Java API によって提供される機能をサポートするロータリーのフォークがあります。update-itemこれを使用してアイテムをセットに挿入しました:

(rotary/update-item cred "MyTbl" "HashKey" {"mysetattribute" [:add #{"newvalue"}]} :return-values "NONE"))
于 2012-08-25T01:33:16.747 に答える