ForgeVision Engineer Blog

フォージビジョン エンジニア ブログ

Amazon Honeycodeでテーブルカラムの自動採番方法

こんにちは、コバケンです。

今回は、Amazon Honeycode というNoCodeで開発できるサービスを使ってみて、これどうやるの?というTipsをご紹介したいと思います。(まだ5時間ぐらいしか触ってないので、ごめんなさい)

オートインクリメントの設定方法

データベースと同様に、idのカラムにAuto Increment(自動採番)を設定したいときってありますよね!? 今回は、1、2、3、、、のように順番に自動採番する設定方法をご紹介します。

下の画像のテーブルが、自動採番を行いたい「user」テーブルです。 ちなみに、自動採番を行いたいカラムは、「id」です。

f:id:kkb1016:20200724235352p:plain
userテーブル

参考とした、コミュニティサイトです。(もろ答えですw) honeycodecommunity.aws

Automationsの機能を使って自動採番!

画面左側にある、イナズママークから+マークをクリックして、新しいAutomationsを追加します。 f:id:kkb1016:20200725001357p:plain

Automation triggerから「Row Added or Deleted」を選択します。
つまり、行が追加または、削除されたときに動作するということです!
In tableは、自動採番したいテーブルを選択します。 今回は、userテーブルを対象とします。 Starts whenで、「a row is added to」と選択することで、データ追加時にトリガーが動作するようにします。 f:id:kkb1016:20200725002817p:plain

+Add actionsから「Overwrite」を選択して、アクションを追加します。
f:id:kkb1016:20200727224223p:plain

以下のテキストボックスに式を入力します。 userテーブルのidを自動採番したいので、user[id]を指定します。

Take data from:

=MAX(user[id])+1

and write to:

=[id]

f:id:kkb1016:20200727224810p:plain

ここまで設定したら、画面右上にある、「Publish」をクリックしてください。 こちらがクリックされていないと、Automation triggerの設定が完了しておらず、動作しません。(私はここで詰まった。。なんで動かないの??) f:id:kkb1016:20200727230619p:plain

設定内容が正常であれば、画面左下に以下の表示がされます。 f:id:kkb1016:20200727230901p:plain

データをテーブルへ追加してみると、自動的にidが採番されました! f:id:kkb1016:20200727231349p:plain

さいごに

Auto Increment(自動採番)ですが、機能として用意されているのではなく、 Automationsの機能を活用して、実現する感じで、AWSぽいなと思いました。
他にも、PKのようにユニークにする方法や画面側でのバリデーションなどについてご紹介できればと思います。