# CSVファイルからのレコードインポート

*スキルレベル: 中級*

## 開始する前に

* [データベース](https://help.adalo.com/ja/database)について知っており、それを作成する基本的な方法を知っていること。
* [サンプルアプリ](https://previewer.adalo.com/751a5514-2eda-4317-b40f-e1190b141589)をクローンし、[サンプルCSVファイル](https://drive.google.com/uc?export=download\&id=1dIeebULF67KSOsGQaNnSOvcxfJLJ4Dfk)をダウンロードします。
* 50レコードまでこの機能を使用するには、有料のAdaloプランは必要ありません。

## 手順

{% tabs %}
{% tab title="シンプル" %}
**1.)** データベースにレコードを手動で追加する別の方法は、CSVファイルをデータベースにインポートすることです。まず、Adaloビルダーの左側のメニューで**Database**ボタン <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-e6de1893f7860f23a7f264a6b6a3b29b653bfa60%2FScreen%20Shot%202021-08-18%20at%2011.17.46%20AM.png?alt=media" alt="" data-size="line"> をクリックし、次にインポートしたいコレクション内の**Records** <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-94e25d2898392af0cd7295ff23d84fa2bfbd9d43%2FScreen%20Shot%202021-08-20%20at%209.36.53%20AM.png?alt=media" alt="" data-size="line"> をクリックします。

**2.)** CSVをアップロードするには、レコードビューの右上にあるアップロードボタン <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-d628ddfed00d57ff3c4123cbfcff4ace05c403ad%2FScreen%20Shot%202021-08-19%20at%209.03.09%20AM.png?alt=media" alt="" data-size="line"> をクリックし、**ファイルを選択** <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-c8079523ee5ce9bfc6ce33b113c9d774cf205efb%2FScreen%20Shot%202021-08-19%20at%209.22.12%20AM.png?alt=media" alt="" data-size="line"> をクリックして、コンピューター上のファイルを選択してアップロードします。CSVがない場合は、サンプルアプリで試してみたい場合は、[こちらをクリックして](https://drive.google.com/uc?export=download\&id=1dIeebULF67KSOsGQaNnSOvcxfJLJ4Dfk)CSVファイルをダウンロードし、[こちらをクリックして](https://previewer.adalo.com/751a5514-2eda-4317-b40f-e1190b141589)サンプルアプリをクローンします。

**3.)** AdaloはCSVファイル内の列をデータベース内の存在するプロパティと自動的にペアにしようとします。CSV内の特定の列をインポートしないように選択したり、自動的に同期されなかった場合は手動で割り当てることができます。CSV内で正しくフォーマットされていれば、ほとんどのプロパティタイプをマッチングできます。各プロパティタイプを適切にフォーマットする方法については、以下の表を参照してください。

| プロパティ             | フォーマット                                                                                                                                                                                                                                                                  |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Text**          | どんな書式でも機能します                                                                                                                                                                                                                                                            |
| **Number**        | 整数、小数、または負の数である必要があります。記号や文字は使用しないでください。                                                                                                                                                                                                                                |
| **True/False**    | 値は\*\*`true`\*\*であるか、falseであるかを示すために空白にしてください。                                                                                                                                                                                                                          |
| **Date**          | **MM/DD/YYYY**または**YYYY-MM-DD**の形式で入力してください。                                                                                                                                                                                                                            |
| **Date and Time** | [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)形式で入力してください。例: **2022-07-04T02:00:00Z**。Adaloはすべての日時をUTCとして解釈します。                                                                                                                                                     |
| **Image**         | インポートには対応していませんが、ストレージURLの場所はテキストとしてインポートできます。                                                                                                                                                                                                                          |
| **File**          | インポートにはサポートされていませんが、ストレージのURL場所はテキストとしてインポートできます。                                                                                                                                                                                                                       |
| **Relationships** | <p><strong>One-to-Many:</strong> 他のコレクションのレコードの最初のプロパティが同一である限り、ペアリングできます。 たとえば、ユーザー <john@test.com> との関係を持つ Trips をインポートする場合、Users コレクションにはこのメールアドレスのユーザーが存在し、かつコレクションの最初のプロパティとして Email が設定されている必要があります。</p><p><strong>Many-to-Many:</strong> インポートにはサポートされていません。</p> |

**4.)** CSVの列とプロパティをペアリングしたら、**Import Data** をクリックします <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-2cd14ef0ac561e634037e55f6b8202fbfe566141%2FScreen%20Shot%202021-08-20%20at%2012.35.20%20PM.png?alt=media" alt="" data-size="line">。すべてがうまくいけば、**"Import Successful"** メッセージが表示されます。エラーが発生した場合は、次のトラブルシューティング手順を実行してください：

* レコードを10000件以下のバッチでアップロードしてみてください。
* 既存のレコードと関係フィールドが *完全に* 一致していることを確認し、コレクションの最初のプロパティ（またはラベル）がCSVの列の値と一致していることを確認してください。
* ラベルフィールド（コレクションの最初のプロパティ）がテキストまたは数値フィールドであることを確認してください。
* 日付形式が正しいことを確認してください
  {% endtab %}

{% tab title="In-Depth" %}
**1.)** データベースにレコードを手動で追加する別の方法は、CSVファイルをデータベースにインポートすることです。まず、Adaloエディタの左側メニューでデータベースボタン <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-e6de1893f7860f23a7f264a6b6a3b29b653bfa60%2FScreen%20Shot%202021-08-18%20at%2011.17.46%20AM.png?alt=media" alt="" data-size="line"> をクリックし、インポートしたいコレクションの **Records** <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-94e25d2898392af0cd7295ff23d84fa2bfbd9d43%2FScreen%20Shot%202021-08-20%20at%209.36.53%20AM.png?alt=media" alt="" data-size="line"> をクリックします。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-c1fabb47da84745155e5787f8b1bb3991a0a3248%2Fopen%20database%20records.gif?alt=media)

**2.)** CSVをアップロードするには、レコードビューの右上にあるアップロードボタンをクリックします <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-d628ddfed00d57ff3c4123cbfcff4ace05c403ad%2FScreen%20Shot%202021-08-19%20at%209.03.09%20AM.png?alt=media" alt="" data-size="line"> 、次に **Select a File** <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-c8079523ee5ce9bfc6ce33b113c9d774cf205efb%2FScreen%20Shot%202021-08-19%20at%209.22.12%20AM.png?alt=media" alt="" data-size="line"> をクリックしてコンピューター上のファイルを選択します。CSVファイルがない場合は、サンプルアプリで試してみたい場合は、[こちらをクリックして](https://drive.google.com/uc?export=download\&id=1dIeebULF67KSOsGQaNnSOvcxfJLJ4Dfk) CSVファイルをダウンロードし、[こちらをクリックして](https://previewer.adalo.com/751a5514-2eda-4317-b40f-e1190b141589) サンプルアプリをクローンします。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-441bc743db990f154434f5a19d3cb298a28e4688%2Fselect%20import.gif?alt=media) **3.)** Adalo は、CSV ファイル内の列をデータベース内のプロパティと自動的にペアリングしようとします。ドロップダウンメニューで **None** を選択することで特定の列をインポートしないように選択することができます。自動的に同期されなかった場合は、手動で割り当てることもできます。CSV で正しくフォーマットされている場合、ほとんどのプロパティタイプをマッチングさせることができます。各プロパティタイプの適切なフォーマット方法については、以下の表を参照してください。

| プロパティ             | フォーマット                                                                                                                                                                                                                                                     |
| ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Text**          | どのようなフォーマットでも機能します                                                                                                                                                                                                                                         |
| **Number**        | 整数、小数、または負の数である必要があります。記号や文字は含めません。                                                                                                                                                                                                                        |
| **True/False**    | 値は **`true`** であるか、false であるかを示すために空白にする必要があります。                                                                                                                                                                                                           |
| **Date**          | **MM/DD/YYYY**または**YYYY-MM-DD**の形式でフォーマットする必要があります                                                                                                                                                                                                         |
| **Date and Time** | \*\*`2021-08-19T17:23:10Z`\*\*などのISO 8601形式である必要があります。Adaloはすべての日時をUTCとして解釈します。この[コンバーター](https://app.adastacks.com/iso-converter)を使用して日付をこの形式に変換できます。                                                                                                     |
| **Image**         | インポートには対応していませんが、ストレージURLの場所はテキストとしてインポートできます。                                                                                                                                                                                                             |
| **File**          | インポートには対応していませんが、ストレージURLの場所はテキストとしてインポートできます。                                                                                                                                                                                                             |
| **Relationships** | <p><strong>One-to-Many:</strong> 他のコレクションのレコードの最初のプロパティが同一であれば、マッチングできます。たとえば、ユーザー<john@test.com>と関係のあるTripsをインポートする場合、Usersコレクションにはこのメールアドレスを持つユーザーが存在し、コレクションの最初のプロパティとしてEmailが設定されている必要があります。</p><p><strong>Many-to-Many:</strong> インポートには対応していません。</p> |

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-62dccd274a7927248b4d0b5521f946a2b53fdf9f%2Fpair%20columns.gif?alt=media)

**4.)** CSVの列とプロパティをペアリングしたら、**Import Data**をクリックします <img src="https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-2cd14ef0ac561e634037e55f6b8202fbfe566141%2FScreen%20Shot%202021-08-20%20at%2012.35.20%20PM.png?alt=media" alt="" data-size="line">。すべてがうまくいくと、「Import Successful」というメッセージが表示され、その後**Done**をクリックできます。エラーが発生した場合は、次のトラブルシューティング手順を実行してください：

* レコードを10,000件以下のバッチでアップロードしてみてください。
* 任意の関係フィールドが既存のレコードと\_完全に\_一致し、コレクションの最初のプロパティ（またはラベル）がCSVの列の値と一致していることを確認してください。
* ラベルフィールド（コレクションの最初のプロパティ）がテキストまたは数値フィールドであることを確認してください。
* 日付形式が正しいことを確認してください
  {% endtab %}
  {% endtabs %}

## 例

インポートが完了すると、新しいレコードがデータベースに表示されます。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-a35c415d8e66e220bd9dbc875dccc22fad800b5a%2Fresult.gif?alt=media)

この手順で使用されている[サンプルアプリ](https://previewer.adalo.com/751a5514-2eda-4317-b40f-e1190b141589)をクローンしたり、自分で試すために[サンプルCSV](https://drive.google.com/uc?export=download\&id=1dIeebULF67KSOsGQaNnSOvcxfJLJ4Dfk)をダウンロードすることができます。

## もっと詳しく

* CSVの列名は、Adaloのプロパティ名と完全に一致する必要はありません。\\
* 列は、コレクションのプロパティと同じ順序である必要はありません。\\
* 通常、1万件以下のレコードをバッチ単位でアップロードするのが最適ですが、それ以上のレコードをアップロードしても成功することは珍しくありません。\\
* CSVのインポートは既存のデータベースレコードを上書きしません。追加のみ行います。

## ヘルプ

この記事に関する追加のヘルプが必要な場合は、いつでも[コミュニティフォーラム](https://forum.adalo.com/)で質問できます！投稿にこの記事へのリンクを貼り付けることも忘れずに！

チュートリアルやヘルプドキュメントのリクエストがありますか？[お知らせください！](https://ideas.adalo.com/tutorial-requests)

tags: cvs, csv, import, upload
