CX事業本部@大阪の岩田です。2020/5/18付けのアップデートにより、DynamoDBの文字列型/バイナリ型項目に空文字列が登録できるようになりました。

簡単ですが、このアップデートについてご紹介します。

何が変わったの?

これまでDynamoDBでは文字列型およびバイナリ型の項目に空文字列を登録することができませんでした。

例えばBoto3を使って以下のようなデータを登録しようとすると、、、

{
  "id":1 ,
  "attr1": ""
}

以下のようなエラーが発生して登録することができませんでした。

One or more parameter values were invalid: An AttributeValue may not contain an empty string

そのため、アプリケーションから空文字列を扱いたい場合は一旦空文字列をNULLに変換してからDynamoDBのテーブルに登録し、読み出し時に再度NULLから空文字列に変換するといった処理が必要でした。この方法だとアプリケーションからは空文字列とNULLを区別して扱うことができませんし、空文字列の変換忘れにより登録が失敗するというバグを生み出しがちでした。しかし、今回のアップデートにより先程の例のような空文字列の項目であってもそのまま登録することが可能になりました。アプリケーション側からは、面倒な変換処理なしで空文字列をそのまま扱うことが可能になりました。

#aws #dynamodb

【アップデート】DynamoDBの文字列型/バイナリ型項目に空文字列が登録できるようになりました!! | Developers.IO
9.40 GEEK