الفصل 6: إدراج الوثيقة في Golang MongoDB

إدراج وثيقة

result, err := collection.InsertOne(
	context.Background(),  // المعلمة السياقية
	bson.D{   // تعريف وثيقة JSON باستخدام bson.D
		{"item", "قماش"},
		{"qty", 100},
		{"tags", bson.A{"قطن"}},
		{"size", bson.D{
			{"h", 28},
			{"w", 35.5},
			{"uom", "سم"},
		}},
	})
	
// الحصول على معرف فريد تم إنشاؤه للوثيقة
id := result.InsertedID

نصيحة: إذا كنت غير ملم بتمثيل بيانات Golang MongoDB ، يرجى الرجوع إلى القسم "نموذج بيانات Golang MongoDB" هنا.

ما يعادل إدراج وثيقة JSON التالية:

{
	"item": "قماش",
	"qty": 100,
	"tags": ["قطن"],
	"size": {
		"h": 28,
		"w": 35.5,
		"uom": "سم"
	}
}

استعلام الوثيقة المدرجة حديثًا

cursor, err := collection.Find(
	context.Background(),
	bson.D{{"item", "قماش"}},  // التعبير المكافئ: {"item": "قماش"}
)

إدراج جماعي

result, err := collection.InsertMany(
	context.Background(),
	[]interface{}{   // قم بتمرير مصفوفة من الوثائق ، ثم قم بإدراج بيانات وثيقة ثلاثة
		bson.D{ // بيانات وثيقة 1
			{"item", "يوميات"},
			{"qty", int32(25)},
			{"tags", bson.A{"فارغ", "أحمر"}},
			{"size", bson.D{
				{"h", 14},
				{"w", 21},
				{"uom", "سم"},
			}},
		},
		bson.D{ // بيانات وثيقة 2
			{"item", "سجادة"},
			{"qty", int32(25)},
			{"tags", bson.A{"رمادي"}},
			{"size", bson.D{
				{"h", 27.9},
				{"w", 35.5},
				{"uom", "سم"},
			}},
		},
		bson.D{ // بيانات وثيقة 3
			{"item", "باد الماوس"},
			{"qty", 25},
			{"tags", bson.A{"جيل", "أزرق"}},
			{"size", bson.D{
				{"h", 19},
				{"w", 22.85},
				{"uom", "سم"},
			}},
		},
	})

الاستعلام عن جميع الوثائق

cursor, err := collection.Find(
	context.Background(),
	bson.D{}, // قم بتمرير شرط استعلام فارغ
)