Binary (بيانات ثنائية)

آخر تحديث: 2026-10-09

Binary (بيانات ثنائية)

يخزّن Binary الصور والملفات والبيانات المشفرة والمعرّفات UUID — أكثر ضغطًا من سلاسل Base64، مع أنواع فرعية (0 عام، 2 ثنائي قديم، 3 UUID قديم، 4 UUID، 7 مشفر). خزّنه مباشرةً ضمن حد المستند البالغ 16 ميجابايت؛ واستخدم GridFS للملفات الأكبر. في mongosh أنشئه بـ `BinData(subtype, 'base64')` أو `Binary.createFromBase64('...')`.

الفئةأنواع BSON
إصدار MongoDB1.0+
لغة المثالmongosh (الطرفية)

📝 الصيغة

BinData(<subtype>, "<base64>")
UUID("<uuid string>")
Binary.createFromBase64("<base64>")

القيمة المرجعة:يُرجع قيمة BSON من نوع Binary

▶ مثال

نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):

// Binary: تخزين بيانات ثنائية
use shop
db.files.insertOne({ name: 'logo.png', data: BinData(0, 'iVBORw0KGgo=') })

المخرجات:

{ _id: ObjectId('...'), name: 'logo.png', data: Binary.createFromBase64('iVBORw0KGgo=') }

📌 ملاحظات

مزيد من الحالات العملية قريبًا.

📚 دروس ذات صلة

❓ الأسئلة الشائعة

Qهل يمكنني تخزين الصور مباشرةً في MongoDB؟
Aدون 16 ميجابايت، نعم — استخدم حقل Binary؛ وأبعد من ذلك استخدم GridFS أو تخزين الكائنات.
Qكيف يُخزَّن UUID في MongoDB؟
Aكنوع فرعي 4 من Binary (UUID)؛ تحوّل المشغلات تلقائيًا.
QBinary أم سلسلة Base64؟
Aاستخدم Binary للبيانات الثنائية (مضغوط وذو أنواع فرعية)؛ وString للنص.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%