True or False? SQLite has datetime data type ؟؟
الإجابة الصحيحة من خلال موقع بوابة الإجابات هي:
False
الإجابة هي: خطأ (False).
الشرح:
على عكس العديد من أنظمة قواعد البيانات الأخرى (مثل MySQL أو PostgreSQL)، فإن SQLite لا يحتوي على نوع بيانات مخصص ومستقل للتاريخ والوقت (Datetime).
كيف يقوم SQLite بتخزين التاريخ والوقت إذاً؟
بما أنه لا يوجد نوع "Datetime" خاص، يقوم SQLite بتخزين هذه المعلومات باستخدام ثلاثة أنواع أساسية من البيانات، ويترك للمبرمج اختيار الأنسب منها:
- النصوص (TEXT): يتم تخزين التاريخ والوقت كنصوص بتنسيق ISO 8601، مثل: `"2023-10-25 14:30:00"`.
- الأرقام الصحيحة (INTEGER): يتم تخزين الوقت كعدد من الثواني التي مرت منذ تاريخ 1 يناير 1970 (ما يعرف بـ Unix Time).
- الأرقام العشرية (REAL): يتم تخزين التاريخ كـ "اليوم اليولياني" (Julian day)، وهو عدد الأيام التي مرت منذ تاريخ قديم جداً.
ملاحظة هامة للطلاب:قد تلاحظ عند كتابة أمر إنشاء جدول `CREATE TABLE` أنك تستطيع كتابة كلمة `DATETIME` لتحديد نوع العمود، ولكن في الحقيقة، SQLite لا ينشئ نوعاً جديداً، بل يستخدم خاصية تسمى "Type Affinity"، حيث يعامل هذا العمود داخلياً كأنه نص (TEXT) أو رقم، ويقوم بتخزين القيمة التي تدخلها كما هي.
لتلخيص الفكرة:
- هل يوجد نوع بيانات اسمه `DATETIME` في SQLite؟ لا.
- كيف يتم التعامل مع التواريخ؟ عن طريق تخزينها كنصوص أو أرقام.
اذا كان لديك إجابة افضل او هناك خطأ في الإجابة علي سؤال True or False? SQLite has datetime data type ؟ اترك تعليق فورآ.