0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

firebaseのデータ削除方法

Last updated at Posted at 2021-04-29

初めに

  • 参考にしたサイトはこちら
  • firebaseのデータベースの削除方法で苦労したのでアウトプットとしてこの記事を書きました。

データベースの削除

指定したドキュメント(id)を削除するは

db.collection('').doc(id).delete()

上記のコードでできたのですが、コレクション全体を一括削除する時に

db.collection('').delete()

上記のコードで出来ると思ったのですがエラーになってしましました。

エラーの原因は、コレクションを直接削除しようとしたところと判明しました。

コレクションを削除するにはコレクション内のすべてのドキュメントを取得して削除しないといけなかったみたいです。

参考サイト

解決方法としてbatchメソッドを活用しました。

引用先

オペレーション セットでドキュメントを読み取る必要がない場合は、複数の書き込みオペレーションを 1 つのバッチとして実行できます。このバッチには、set()、update()、delete() オペレーションを自由に組み合わせて含めることができます。書き込みのバッチはアトミックに実行され、また複数のドキュメントに対する書き込みを実行できます。

 const Ref=db.collection('');
    const batch = db.batch();
    for(const product of products){
      batch.delete(
        Ref.doc(product.id)
      )
    }
    batch.commit()
    .then(()=>{
      console.log("成功")
    })

(productsには対象のコレクションのドキュメントの情報がすべて入っていると仮定します。)

上記のコードでbatchメソッドを実行し一括削除することに成功しました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?