English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

أنواع البيانات في MySQL

تحديد نوع حقل البيانات في MySQL مهم جدًا لتحسين قاعدة بياناتك.

MySQL يدعم أنواع متعددة، يمكن تقسيمها بشكل عام إلى ثلاثة أنواع: النصوص العددية، التواريخ والوقت والنصوص (الصور).

أنواع البيانات العددية

يدعم MySQL جميع أنواع البيانات العددية المعيارية SQL.

تتضمن هذه الأنواع أنواع البيانات العددية الصحيحة (INTEGER،SMALLINT،DECIMAL وNUMERIC)، وأنواع البيانات العددية تقريبية (FLOAT،REAL وDOUBLE PRECISION).

هو كلمة مفتاحية INT هو اسم نفسه INTEGER،كلمة مفتاحية DEC هو نفسها DECIMAL.

يحفظ نوع البيانات BIT قيم حقل البت، يدعم جداول MyISAM،MEMORY،InnoDB و BDB.

كإضافة إلى معيار SQL، يدعم MySQL أنواع العدد الصحيح TINYINT،MEDIUMINT وBIGINT. يظهر الجدول التالي التخزين والمجالات المطلوبة لكل نوع عدد صحيح.

النوعالحجممدى (مدخل)مدى (غير مدخل)الاستخدام
TINYINT1 byte(-128،127)(0،255)قيمة عددية صغيرة
SMALLINT2 bytes(-32 768،32 767)(0،65 535)قيمة عددية كبيرة
MEDIUMINT3 bytes(-8 388 608،8 388 607)(0،16 777 215)قيمة عددية كبيرة
INT أو INTEGER4 bytes(-2 147 483 648،2 147 483 647)(0،4 294 967 295)قيمة عددية كبيرة
BIGINT8 bytes(-9,223,372,036,854,775,808،9 223 372 036 854 775 807)(0،18 446 744 073 709 551 615)قيمة عددية كبيرة
FLOAT4 bytes(-3.402 823 466 E+38،-1.175 494 351 E-38),0،(1.175 494 351 E-38،3.402 823 466 351 E+38)0،(1.175 494 351 E-38،3.402 823 466 E+38)مستطيلات واحدة
القيم العددية العائمة
DOUBLE8 bytes(-1.797 693 134 862 315 7 E+308،-2.225 073 858 507 201 4 E-308)،0،(2.225 073 858 507 201 4 E-308،1.797 693 134 862 315 7 E+308)0،(2.225 073 858 507 201 4 E-308،1.797 693 134 862 315 7 E+308)دقة عالية
القيم العددية العائمة
DECIMALللDECIMAL(M,D) إذا كان M>D،则为 M+2 وإلا则为 D+2تعتمد على قيم M و Dتعتمد على قيم M و Dالقيم العددية

أنواع التاريخ والوقت

أنواع التاريخ والوقت التي تمثل قيم الوقت هي DATETIME،DATE،TIMESTAMP،TIME وYEAR.

للكل نوع وقتي نطاق قيمة معين و قيمة "صفر"، تستخدم القيمة الصفر عند تحديد قيمة غير قانونية لا يمكن تمثيلها في MySQL.

نوع TIMESTAMP له خاصية تحديث تلقائي مخصص، سيتم شرحها لاحقًا.

النوعالحجم
(bytes)
النطاقالتنسيقالاستخدام
DATE31000-01-01/9999-12-31YYYY-MM-DDقيمة التاريخ
TIME3'-838:59:59'/'838:59:59'HH:MM:SSقيمة الوقت أو المدة
YEAR11901/2155YYYYقيمة السنة
DATETIME81000-01-01 00:00:00/9999-12-31 23:59:59YYYY-MM-DD HH:MM:SSقيم تاريخية زمنية مختلطة
TIMESTAMP4

1970-01-01 00:00:00/2038

الوقت النهائي هو في 2147483647 الساعة،في التوقيت الشامل الشمالي (CST) 2038-1-19 11:14:07،في التوقيت العالمي المعياري (GMT) 19 يناير 2038 الساعة 03:14:07 صباحًا

YYYYMMDD HHMMSSقيم تاريخية زمنية مختلطة، علامة زمنية

أنواع النص

نوع النص يشمل CHAR،VARCHAR،BINARY،VARBINARY،BLOB،TEXT،ENUM وSET. يصف هذا الفصل كيف تعمل هذه الأنواع وكيف تستخدمها في الاستعلامات.

النوعالحجمالاستخدام
CHAR0-255 بايتقيمة نصية ثابتة الطول
VARCHAR0-65535 بايتقيمة نصية متغيرة الطول
TINYBLOB0-255 بايتقيمة نصية ثنائية قصيرة لا تزيد على 255 حرف
TINYTEXT0-255 بايتقيمة نصية قصيرة
BLOB0-65 535 بايتمعلومات نصية طويلة في شكل ثنائي
TEXT0-65 535 بايتمعلومات نصية طويلة
MEDIUMBLOB0-16 777 215 بايتمعلومات نصية متوسطة الطول في شكل ثنائي
MEDIUMTEXT0-16 777 215 بايتمعلومات نصية متوسطة الطول
LONGBLOB0-4 294 967 295 bytesمعلومات نصية كبيرة في شكل ثنائي
LONGTEXT0-4 294 967 295 bytesبيانات النص الكبيرة

ملاحظةفي char(n) و varchar(n)، الرقم n في الأسقاطة يمثل عدد الأحرف وليس عدد الأحرف الثنائية، مثل CHAR(30) يمكنه تخزين 30 حرفًا.

CHAR و VARCHAR مشابهان، ولكنهم يحفظون ويسترجعون بطرق مختلفة. طولهم القصوى ووجود الفراغات الزائدة في نهاية النصوص مختلفة. لا يتم إجراء تحويلات لحالة الحروف أثناء التخزين أو الاسترجاع.

BINARY و VARBINARY مشابهان لـ CHAR و VARCHAR، ولكنهم يحتويان على 字符 النص الثنائي وليس النص غير الثنائي. أي أنهم يحتويون على سلسلة من الأحرف الثنائية وليس الأحرف. هذا يعني أنهم ليس لديهم مجموعة حروف، وأن الترتيب والتحقق يحدث بناءً على القيمة النسبية للأحرف الثنائية في العمود.

BLOB هو عنصر كبير من البيانات الثنائية يمكنه استيعاب كمية غير محددة من البيانات. هناك 4 أنواع BLOB: TINYBLOB، BLOB، MEDIUMBLOB و LONGBLOB. الفرق بينها هو نطاق التخزين المختلف.

هناك 4 أنواع TEXT: TINYTEXT، TEXT، MEDIUMTEXT و LONGTEXT. هناك 4 أنواع BLOB المترادفة، والطول القصوى المختلفة، يمكن اختيارها بناءً على الحالة الفعلية.