【Flutter/Firestore】コレクションとは?手動でデータを操作して理解

Flutterでコードを使いながらCloud Firestoreのデータ管理(CRUD)を行っていく前に、まずは理解を深めるため手動でCloud Firestoreのデータを生成・追加していきます。

Cloud Firestoreでデータ管理をする上で必要となる用語、コレクション(collection)、ドキュメント(document)、サブコレクション(sub-collection)、フィールド(field)についても解説します。

\ 世界最大級のオンライン学習サービス /

目次

Cloud Firestoreで使用する基本用語

用語意味
①コレクション(collection)ドキュメントを格納
②サブコレクション(sub-collection)ドキュメントを格納
③ドキュメント(document)フィールドまたはサブコレクションを格納
④フィールド(field)キーと値のペア(Key-Valueペア)
ドキュメントに格納

Cloud FirestoreはNoSQLデータベースなので、SQLデータベースとは違いテーブルや行はありません。代わりにデータは「ドキュメント」に格納し、ドキュメントは「コレクション」にまとめます。

今までSQLを使っていた方は「コレクション」が「テーブル」、「行」がコレクション1つ下にある「ドキュメント」だととりあえず思っておきましょう。

コレクションとサブコレクションの違い

「コレクション」と「サブコレクション」はどちらも同様にドキュメントを格納します。違いはどの階層のコレクションであるかです。

トップ階層の場合は「コレクション」、ドキュメントのデータである場合は「サブコレクション」です。

コレクションとドキュメントは交互に渡す

Cloud Firestoreではコレクション下にはドキュメント、ドキュメント下にはコレクションと交互に渡す必要があります。

「コレクション>コレクション」または「ドキュメント>ドキュメント」と立て続けにデータを渡せません。

ドキュメントにフィールドでデータを格納

ドキュメントにコレクション(サブコレクション)を渡せることを説明しました。一方でドキュメントに文字列(string)や数値(number)などのデータ型を格納するには「フィールド」を使用します。

フィールドでは格納したい「データ値」と「キー」をペアとして保存します。

それでは実際にCloud Firestoreでコレクションを作成し、文字列・数値などのデータを手動で格納していきます。(Cloud Firestoreのイメージが湧いたら次はFlutterアプリからデータ操作)

事前準備:データベースの作成

Cloud Firestoreのデータベースをまだ作成していない方は先にこちらの解説記事をお読みください。

Cloud Firestoreで手動でコレクションを作成

Cloud Firestoreを開いたら「コレクションを開始」をクリックし、データベースのトップ階層となるコレクションを作成していきます。

コレクションIDでコレクション名をつけます。

コレクションを作成するには少なくとも1つドキュメントが必要となります。

ドキュメントには固有の「ドキュメントID」が必要です。自分で作成も可能ですが「自動ID」で重複しないIDを自動で生成できます。

ドキュメントに文字列や数値などのデータ型を格納するにはフィールドを追加します。

「フィールド」で格納するデータのキー、「タイプ」でデータ型、「値」でデータ値を指定し格納します。

複数のフィールドを追加したい場合はプラスボタンから追加できます。(コレクション作成後にも追加・編集可能)

フィールドを追加したら保存します。

すると、こんな感じでコレクション、ドキュメント、フィールドが作成されます。

データの追加、更新、削除はこの管理画面からできます。

一緒に読みたい

参考

  • URLをコピーしました!
目次