JSON في SQLite
JSON in SQLite
مفهوم
~18 دقيقة
JSON في SQLite
SQLite تدعم دوال JSON مثل json_extract. هذا مفيد للبيانات المرنة أو metadata صغيرة. لكن لا تجعل JSON بديلاً عن schema واضح للبيانات الأساسية. إذا كنت تستعلم عن الحقل كثيراً أو تفرض عليه قيوداً، غالباً يستحق عموداً حقيقياً.
استخدم JSON للملحقات أو الإعدادات التي لا تحتاج علاقات قوية. أما المال، الحالة، المفاتيح، والمخزون فمكانها أعمدة typed وقيود.
مثال عملي
query.sql
Output:
الاستعلام يستخرج course من JSON.
مشغّلا -> و->> — SQLite 3.38+
SQLite 3.38 (صدرت يناير 2022) أضافت مشغّلَي -> و->> بديلاً أقصر لـjson_extract. PostgreSQL تدعمهما منذ 9.4 (2014).
query.sql
Output:
الفرق بين -> و->>:
->يُرجع القيمة كـJSON (نص محاط بـ"للنصوص، أرقام كأرقام JSON).->>يُرجع القيمة كنوع SQL مناسب (TEXT، INTEGER، REAL، NULL).
للكود الإنتاجي في SQLite التوافقي (تشغيل على إصدارات أقدم من 3.38)، ابقَ مع json_extract. للمشاريع الجديدة على بيئة محكومة، ->> أكثر وضوحاً.
تحدي — Challenge
استخدم json_extract على $.course