如何删除Firestore集合数据库中的所有文档

时间:2020-05-29 16:46:34

标签: javascript google-cloud-firestore

我使用Firestore数据库存储和检索数据。 每天晚上,Firestore集合中需要有可用的新数据集(文档)。 因此,有什么方法可以一次完全删除集合中的所有现有文档。

我尝试过那里的文档,它说我们需要一个接一个地删除,这是不可能的。 因为文档ID是自动生成的。

下面是documantaion的代码。

@Transactional
@Modifying
@Query(nativeQuery = true,
        value = "some insert query with someParam")
public int someQuery(@Param("someParam") String someParam) {}

那么有什么方法可以删除给定火力基础收藏中的整个文档?

我尝试使用上面的代码,但出现以下错误。

var cityRef = db.collection('cities').doc('BJ');

// Remove the 'capital' field from the document
var removeCapital = cityRef.update({
    capital: firebase.firestore.FieldValue.delete()
});

下面是我的代码:

(index):63 Uncaught ReferenceError: Firestore is not defined
    at myFunction ((index):63)
    at HTMLParagraphElement.onclick ((index):57)

1 个答案:

答案 0 :(得分:1)

文档是正确的:您必须单独删除文档。这并非不可能-您只需先query for all the documents first,然后再delete each one。例如:

db.collection('cities').get().then(querySnapshot => {
    querySnapshot.docs.forEach(snapshot => {
        snapshot.ref.delete();
    })
})