SQLite أنواع البيانات: عدد صحيح، نص، رقمي، حقيقي، ثنائي كبير
⚡ ملخص ذكي
SQLite تختلف أنواع البيانات عن قواعد البيانات الأخرى لأنها SQLite يستخدم النوع الديناميكيpingتخزين أي قيمة في أي عمود. تحدد فئات التخزين، وتقارب الأنواع، وأسماء الأنواع المعلنة معًا كيفية حفظ كل قيمة فعليًا على القرص.

توضح الأقسام التالية كيفية SQLite يتناول أنواع البيانات، بدءًا من فئات التخزين الخمس، ثم تقارب الأنواع وقواعد تعيينها، وأخيرًا أمثلة عملية لتخزين الأعداد الصحيحة والأعداد الحقيقية وBLOBs والقيم المنطقية والتواريخ.
أنواع البيانات في SQLite تختلف عن تلك الموجودة في أنظمة إدارة قواعد البيانات الأخرى. SQLiteيمكنك تعريف أنواع البيانات بشكل طبيعي، ولكن لا يزال بإمكانك تخزين أي قيمة في أي نوع بيانات.
SQLite هو نظام غير مُصنّف. لا توجد أنواع بيانات ثابتة؛ يمكنك تخزين أي نوع من البيانات تريده في أي عمود. يُسمى هذا النوع الديناميكيping.
في الأنواع الثابتة، كما هو الحال في أنظمة إدارة قواعد البيانات الأخرى، إذا قمت بتعريف عمود بنوع بيانات عدد صحيح، فلا يمكنك إدخال سوى قيم من نوع بيانات عدد صحيح. ومع ذلك، في الأنواع الديناميكية، كما هو الحال في SQLiteيتم تحديد نوع العمود بناءً على القيمة المُدخلة، ثم SQLite يخزن تلك القيمة حسب نوعها.
SQLite فئات التخزين
In SQLite توجد طرق تخزين مختلفة تبعًا لنوع القيمة؛ وتسمى طرق التخزين المختلفة هذه فئات التخزين في SQLite.
فيما يلي فئات التخزين المتوفرة في SQLite:
- اغية - يتم استخدام فئة التخزين هذه لتخزين أي قيمة فارغة.
- INTEGER – يتم تخزين أي قيمة عددية كقيمة عددية صحيحة مُوقّعة (يمكنها استيعاب قيم عددية صحيحة موجبة وسالبة). القيم العددية الصحيحة في SQLite يتم تخزينها إما في 1 أو 2 أو 3 أو 4 أو 6 أو 8 بايت من التخزين اعتمادًا على قيمة الرقم.
- ريال – يتم استخدام فئة التخزين هذه لتخزين قيم الفاصلة العائمة، ويتم تخزينها في 8 بايت من مساحة التخزين.
- TEXT – يخزن سلاسل نصية. كما يدعم ترميزات مختلفة مثل UTF-8 وUTF-16BE وUTF-16LE.
- BLOB – تُستخدم لتخزين الملفات الكبيرة، مثل الصور أو الملفات النصية. تُخزن القيمة كمصفوفة بايت، تمامًا مثل قيمة الإدخال.
SQLite نوع التقارب
يُوصى بتخزين نوع البيانات المُحدد في العمود. مع ذلك، يمكنك تخزين أي نوع من البيانات كما تشاء؛ فهذه الأنواع مُوصى بها وليست إلزامية.
تم تقديم هذه الأنواع في SQLite لتحقيق أقصى قدر من التوافق بين SQLite وغيرها نظام إدارة قواعد البياناتs.
أي عمود تم الإعلان عنه في SQLite يتم تحديد نوع البيانات في قاعدة البيانات بناءً على نوع البيانات المُعلن عنه. فيما يلي قائمة بأنواع البيانات في SQLite:
- نص.
- رقمي.
- عدد صحيح.
- حقا.
- سائل لزج.
هنا هو كيف SQLite يحدد انتماء العمود من نوع البيانات المعلن عنه:
- يتم تعيين تقارب INTEGER إذا كان النوع المعلن يحتوي على سلسلة "INT".
- يتم تعيين خاصية TEXT إذا كان نوع بيانات العمود يحتوي على إحدى السلاسل التالية: "TEXT" أو "CHAR" أو "CLOB". على سبيل المثال، سيتم تعيين خاصية TEXT لنوع البيانات VARCHAR.
- يتم تعيين تقارب BLOB إذا لم يكن العمود يحتوي على نوع محدد أو كان نوع البيانات هو BLOB.
- يتم تعيين التقارب الحقيقي إذا كان النوع يحتوي على إحدى السلاسل التالية: "DOUB" أو "REAL" أو "FLOAT".
- يتم تعيين تقارب NUMERIC لأي نوع بيانات آخر.
يوجد أيضًا جدول أدناه يعرض بعض الأمثلة على الخريطةping ما بين SQLite أنواع البيانات وارتباطاتها التي تحددها هذه القواعد:
أمثلة على تخزين أنواع البيانات في SQLite
تخزين الأرقام مع SQLite INTEGER
إذا كان أي عمود يحتوي على نوع بيانات يتضمن كلمة "INT"، فسيتم تعيين نوع بياناته إلى نوع INTEGER. وسيتم تخزينه في فئة تخزين INTEGER.
جميع أنواع البيانات التالية مُخصصة لنوع البيانات الصحيح (INTEGER):
- عدد صحيح، عدد صحيح، كبير.
- إنت2، إنت4، إنت8.
- صغير جدًا، صغير، متوسط.
عدد صحيح من نوع التقارب في SQLite يمكن أن يحتوي على أي عدد صحيح معين (موجب أو سالب) من بايت واحد إلى 8 بايت كحد أقصى.
تخزين الأرقام مع SQLite ريال
الأرقام الحقيقية هي أرقام ذات دقة فاصلة عائمة مزدوجة. SQLite يخزن الأعداد الحقيقية كمصفوفة من 8 بايت. إليك قائمة بأنواع البيانات في SQLite التي يمكنك استخدامها لتخزين الأرقام الحقيقية:
- حقا.
- مزدوج.
- دقة مضاعفة.
- يطفو.
تخزين البيانات الكبيرة باستخدام SQLite BLOB
لا توجد سوى طريقة واحدة لتخزين الملفات الكبيرة في SQLite تستخدم قاعدة البيانات نوع بيانات BLOB. يُستخدم هذا النوع من البيانات لتخزين الملفات الكبيرة مثل الصور أو أي نوع آخر من الملفات. يتم تحويل الملف إلى مصفوفة بايت ثم يُخزن بنفس حجم ملف الإدخال.
تخزين SQLite القيم المنطقية
SQLite لا يوجد فئة تخزين منطقية منفصلة. بدلاً من ذلك، يتم تخزين القيم المنطقية كأعداد صحيحة، حيث يمثل 0 خطأ و1 يمثل صحيح.
تخزين SQLite التواريخ والأوقات
يمكنك تحديد التواريخ أو الأوقات في SQLite باستخدام أحد أنواع البيانات التالية:
- تاريخ
- التاريخ والوقت
- الطابع الزمني
- الوقت
لاحظ أنه لا توجد فئة تخزين منفصلة للتاريخ أو التاريخ والوقت في SQLiteبدلاً من ذلك، يتم تخزين أي قيم تم الإعلان عنها باستخدام أحد أنواع البيانات السابقة في فئة تخزين تعتمد على تنسيق التاريخ للقيمة المُدخلة، كما يلي:
- TEXT – إذا قمت بإدخال قيمة التاريخ بتنسيق سلسلة ISO8601 ("YYYY-MM-DD HH:MM:SS.SSS").
- ريال – إذا قمت بإدخال قيمة التاريخ كرقم يوم جولياني، فإن عدد الأيام منذ الظهر في غرينتش في 24 نوفمبر 4714 قبل الميلاد يتم تخزين قيمة التاريخ كـ REAL.
- INTEGER - مثل يونكس الوقت، عدد الثواني منذ 1970-01-01 00:00:00 بالتوقيت العالمي.

