नीचे दिए गए उदाहरणों में, दस्तावेज़, फ़ील्ड, और संग्रह.
दस्तावेज़ मिटाएं
किसी दस्तावेज़ को मिटाने के लिए, अलग-अलग भाषा के लिए इन delete()
तरीकों का इस्तेमाल करें:
Web
deleteDoc()
तरीके का इस्तेमाल करें:
import { doc, deleteDoc } from "firebase/firestore"; await deleteDoc(doc(db, "cities", "DC"));
Web
delete()
तरीके का इस्तेमाल करें:
db.collection("cities").doc("DC").delete().then(() => { console.log("Document successfully deleted!"); }).catch((error) => { console.error("Error removing document: ", error); });
Swift
delete()
तरीके का इस्तेमाल करें:
do { try await db.collection("cities").document("DC").delete() print("Document successfully removed!") } catch { print("Error removing document: \(error)") }
Objective-C
deleteDocumentWithCompletion:
तरीके का इस्तेमाल करें:
[[[self.db collectionWithPath:@"cities"] documentWithPath:@"DC"] deleteDocumentWithCompletion:^(NSError * _Nullable error) { if (error != nil) { NSLog(@"Error removing document: %@", error); } else { NSLog(@"Document successfully removed!"); } }];
Kotlin+KTX
delete()
तरीके का इस्तेमाल करें:
db.collection("cities").document("DC") .delete() .addOnSuccessListener { Log.d(TAG, "DocumentSnapshot successfully deleted!") } .addOnFailureListener { e -> Log.w(TAG, "Error deleting document", e) }
Java
delete()
तरीके का इस्तेमाल करें:
db.collection("cities").document("DC") .delete() .addOnSuccessListener(new OnSuccessListener<Void>() { @Override public void onSuccess(Void aVoid) { Log.d(TAG, "DocumentSnapshot successfully deleted!"); } }) .addOnFailureListener(new OnFailureListener() { @Override public void onFailure(@NonNull Exception e) { Log.w(TAG, "Error deleting document", e); } });
Dart
delete()
तरीके का इस्तेमाल करें:
db.collection("cities").doc("DC").delete().then( (doc) => print("Document deleted"), onError: (e) => print("Error updating document $e"), );
Java
delete()
तरीके का इस्तेमाल करें:
Python
delete()
तरीके का इस्तेमाल करें:
Python
delete()
तरीके का इस्तेमाल करें:
C++
Delete()
तरीके का इस्तेमाल करें:
db->Collection("cities").Document("DC").Delete().OnCompletion( [](const Future<void>& future) { if (future.error() == Error::kErrorOk) { std::cout << "DocumentSnapshot successfully deleted!" << std::endl; } else { std::cout << "Error deleting document: " << future.error_message() << std::endl; } });
Node.js
delete()
तरीके का इस्तेमाल करें:
शुरू करें
Delete()
तरीके का इस्तेमाल करें:
PHP
delete()
तरीके का इस्तेमाल करें:
Unity
DeleteAsync()
तरीके का इस्तेमाल करें:
DocumentReference cityRef = db.Collection("cities").Document("DC"); cityRef.DeleteAsync();
C#
DeleteAsync()
तरीके का इस्तेमाल करें:
Ruby
delete()
तरीके का इस्तेमाल करें:
जब किसी दस्तावेज़ को मिटाया जाता है, तो Cloud Firestore अपने-आप नहीं मिटता
इसके तहत दस्तावेज़ों को मिटा सकते हैं
उप-संग्रह. आपके पास रेफ़रंस के तौर पर, सब-कलेक्शन दस्तावेज़ों को अब भी ऐक्सेस करने का विकल्प है.
उदाहरण के लिए, दस्तावेज़ को पाथ पर ऐक्सेस किया जा सकता है
/mycoll/mydoc/mysubcoll/mysubdoc
सम
अगर /mycoll/mydoc
पर पहले का दस्तावेज़ मिटाया जाता है.
जो दस्तावेज़ पहले से मौजूद हैं वे कंसोल में दिखते हैं, लेकिन वे क्वेरी के नतीजों और स्नैपशॉट में नहीं दिखते.
अगर आपको दस्तावेज़ और उसमें मौजूद सभी दस्तावेज़ों को मिटाना है, सब-कलेक्शन चला रहे हैं, तो यह आपको मैन्युअल तौर पर करना होगा. ज़्यादा जानकारी के लिए, यह देखें संग्रह मिटाना.
फ़ील्ड मिटाएं
किसी दस्तावेज़ से कुछ फ़ील्ड मिटाने के लिए, अलग-अलग भाषा के हिसाब से इन FieldValue.delete()
तरीकों का इस्तेमाल करें
जब कोई दस्तावेज़ अपडेट किया जाता है, तो:
Web
deleteField()
तरीके का इस्तेमाल करें:
import { doc, updateDoc, deleteField } from "firebase/firestore"; const cityRef = doc(db, 'cities', 'BJ'); // Remove the 'capital' field from the document await updateDoc(cityRef, { capital: deleteField() });
Web
FieldValue.delete()
तरीके का इस्तेमाल करें:
var cityRef = db.collection('cities').doc('BJ'); // Remove the 'capital' field from the document var removeCapital = cityRef.update({ capital: firebase.firestore.FieldValue.delete() });
Swift
FieldValue.delete()
तरीके का इस्तेमाल करें:
do { try await db.collection("cities").document("BJ").updateData([ "capital": FieldValue.delete(), ]) print("Document successfully updated") } catch { print("Error updating document: \(error)") }
Objective-C
fieldValueForDelete:
तरीके का इस्तेमाल करें:
[[[self.db collectionWithPath:@"cities"] documentWithPath:@"BJ"] updateData:@{ @"capital": [FIRFieldValue fieldValueForDelete] } completion:^(NSError * _Nullable error) { if (error != nil) { NSLog(@"Error updating document: %@", error); } else { NSLog(@"Document successfully updated"); } }];
Kotlin+KTX
FieldValue.delete()
तरीके का इस्तेमाल करें:
val docRef = db.collection("cities").document("BJ") // Remove the 'capital' field from the document val updates = hashMapOf<String, Any>( "capital" to FieldValue.delete(), ) docRef.update(updates).addOnCompleteListener { }
Java
FieldValue.delete()
तरीके का इस्तेमाल करें:
DocumentReference docRef = db.collection("cities").document("BJ"); // Remove the 'capital' field from the document Map<String,Object> updates = new HashMap<>(); updates.put("capital", FieldValue.delete()); docRef.update(updates).addOnCompleteListener(new OnCompleteListener<Void>() { // ... // ...
Dart
FieldValue.delete()
तरीके का इस्तेमाल करें:
final docRef = db.collection("cities").doc("BJ"); // Remove the 'capital' field from the document final updates = <String, dynamic>{ "capital": FieldValue.delete(), }; docRef.update(updates);
Java
FieldValue.delete()
तरीके का इस्तेमाल करें:
Python
firestore.DELETE_FIELD
तरीके का इस्तेमाल करें:
Python
firestore.DELETE_FIELD
तरीके का इस्तेमाल करें:
C++
FieldValue::Delete()
तरीके का इस्तेमाल करें:
DocumentReference doc_ref = db->Collection("cities").Document("BJ"); doc_ref.Update({{"capital", FieldValue::Delete()}}) .OnCompletion([](const Future<void>& future) { /*...*/ });
Node.js
FieldValue.delete()
तरीके का इस्तेमाल करें:
शुरू करें
firestore.Delete
तरीके का इस्तेमाल करें:
PHP
FieldValue::deleteField()
तरीके का इस्तेमाल करें:
Unity
FieldValue.Delete
तरीके का इस्तेमाल करें:
DocumentReference cityRef = db.Collection("cities").Document("BJ"); Dictionary<string, object> updates = new Dictionary<string, object> { { "Capital", FieldValue.Delete } };
C#
FieldValue.Delete
तरीके का इस्तेमाल करें:
Ruby
firestore.field_delete
तरीके का इस्तेमाल करें:
कलेक्शन मिटाएं
Cloud Firestore में पूरा कलेक्शन या सब-कलेक्शन मिटाने के लिए, कलेक्शन या सब-कलेक्शन में मौजूद सभी दस्तावेज़ वापस पाएं (पढ़ें) और मिटाएं उन्हें. इस प्रोसेस में, कॉन्टेंट पढ़ने और उसे मिटाने, दोनों का खर्च शामिल होता है. अगर आपके पास बड़ा साइज़ है संग्रह, हो सकता है कि आप इन दस्तावेज़ों को छोटे बैच में हटाना चाहें मेमोरी से बाहर होने पर मिलने वाली गड़बड़ियां. पूरी प्रोसेस मिटाने के बाद ही, यह प्रोसेस दोहराएं कलेक्शन या सब-कलेक्शन है.
किसी संग्रह को हटाने के लिए मिटाने के अलग-अलग अनुरोध शामिल हैं. अगर आपको पूरे कलेक्शन मिटाने हैं, तो ऐसा सिर्फ़ करें का इस्तेमाल किया जा सकता है. कलेक्शन को मिटाया भी जा सकता है भी कुछ डेटा है. ऐसा करने से सुरक्षा और परफ़ॉर्मेंस पर बुरा असर पड़ता है.
नीचे दिए गए स्निपेट कुछ हद तक आसान हैं और इनमें गड़बड़ियों को ठीक करना नहीं आता, सुरक्षा, सब-कलेक्शन मिटाने या परफ़ॉर्मेंस को बेहतर बनाने के लिए किया जा सकता है. ज़्यादा जानकारी के लिए प्रोडक्शन में कलेक्शन मिटाने के बारे में एक सुझाया गया तरीका है. कलेक्शन और सब-कलेक्शन मिटाना.
वेब
// Deleting collections from a Web client is not recommended.
Swift
// Deleting collections from an Apple client is not recommended.
Objective-C
// Deleting collections from an Apple client is not recommended.
Kotlin+KTX
// Deleting collections from an Android client is not recommended.
Java
// Deleting collections from an Android client is not recommended.
Dart
क्लाइंट से कलेक्शन मिटाने का सुझाव नहीं दिया जाता.
Java
Python
Python
C++
// This is not supported. Delete data using CLI as discussed below.
Node.js
शुरू करें
PHP
Unity
// This is not supported. Delete data using CLI as discussed below.
C#
Ruby
Firebase सीएलआई की मदद से डेटा मिटाएं
डेटा मिटाने के लिए, Firebase सीएलआई का इस्तेमाल भी किया जा सकता है दस्तावेज़ और कलेक्शन. डेटा मिटाने के लिए, यहां दिए गए कमांड का इस्तेमाल करें:
firebase firestore:delete [options] <<path>>
कंसोल से डेटा मिटाना
आप कंसोल में मौजूद Cloud Firestore पेज से दस्तावेज़ और कलेक्शन मिटाएं. कंसोल से दस्तावेज़ को मिटाने पर, उसमें मौजूद सभी नेस्ट किया गया डेटा मिट जाता है दस्तावेज़ के साथ-साथ सभी उप-संग्रह भी शामिल हैं.
TTL नीतियों वाला डेटा मिटाना
टीटीएल नीति, दिए गए फ़ील्ड को दिए गए कलेक्शन ग्रुप को चुनें. TTL मिटाने की कार्रवाइयों की संख्या, आपके दस्तावेज़ मिटाने में लागत.
TTL सेट करने के बारे में जानकारी के लिए, टीटीएल नीतियों के साथ डेटा के रखरखाव को मैनेज करना देखें.
गड़बड़ी के कोड और डेटा मिटाते समय, इंतज़ार के समय से जुड़ी समस्याओं को हल करने के तरीके के बारे में ज़्यादा जानने के लिए, समस्या हल करने वाला पेज देखें.
Dataflow की मदद से डेटा मिटाएं
Dataflow एक बेहतरीन टूल है, जो आपके Firestore डेटाबेस पर एक साथ कई काम करने के लिए है. कॉन्टेंट बनाने Dataflow के शुरुआती ब्लॉग पोस्ट के लिए, Firestore कनेक्टर में सभी दस्तावेज़ों को मिटाने का एक उदाहरण दिया गया है कोई कलेक्शन ग्रुप होता है.