انواع داده در MySQL
ساختار جداول پایگاه داده از قوانین زیر پیروی می کنند. به طور مثال هر ستون از جدول می بایست ویژگی های زیر را داشته باشد ( از قالب زیر پیروی می کنند :
هر سطر از چند ستون تشکیل شده است و هر سطر یک رکورد را تشکیل می دهد. هر سلول از پایگاه داده از قانون بالا پیروی می کند.
انواع داده در MySQL
سلول های ستون های جدول در موتور mysql به دسته بندی های زیر تقسیم می شود :
- اعداد Numeric
- زمان Date and Time
- رشته ها String
- داده های فضایی Spatial
اعداد Numeric : تمامی انواع داده های عددی استاندارد SQL شامل اعداد صحیح و اعداد تقریبی را پشتیبانی می کند. همچنین در نظر داشته باشید که هر کدام از آنها محدوده مشخصی را پشتیبانی می کنند. هر نوع از این داده های عددی را می توان به صورت SIGNED یا UNSIGNED تعریف کرد.
نوع | حافظه (بایت) | حداقل مقدار | حداکثر مقدار |
---|---|---|---|
TINYINT | 1 | -128 | 127 |
0 | 255 | ||
SMALLINT | 2 | -32768 | 32767 |
0 | 65535 | ||
MEDIUMINT | 3 | -8388608 | 8388607 |
0 | 16777215 | ||
INTEGER | 4 | -2147483648 | 2147483647 |
0 | 4294967295 | ||
BIGINT | 8 | -9223372036854775808 | 9223372036854775807 |
0 | 18446744073709551615 |
دقت داشته باشید نوع داده BOOLEAN همان مقدار TINYINT(1) می باشد. مقادیر FLOAT,BOOLEAN,DECIMAL برای مقادیر اعشاری می باشد.
زمان Date and Time : نوع داده تاریخ باید با فرمت زیر ذخیره گردد :
نوع | حافظه (بایت) | مقدار صفر (“Zero” Value) |
---|---|---|
DATE | 3 | '0000-00-00' |
TIME | 3 | '00:00:00' |
DATETIME | 8 | '0000-00-00 00:00:00' |
TIMESTAMP | 4 | '0000-00-00 00:00:00' |
YEAR | 1 | 0000 |
هر ردیف می تواند دو ستون معادل دو زمان ذخیره سازی (save) و بروزرسانی (update) داشته باشد . این مقادیر به صورت خودکار با کد های زیر پر می شوند.
updated_at TIMESTAMP NOT NULL DEFAULT NOW() ON UPDATE NOW(), created_at TIMESTAMP NOT NULL DEFAULT NOW(),
رشته ها String : نوع داده String برای نگه داری رشته ها(متون) استفاده می شود. در زیر اطلاعات کلی داده هایی از نوع String را مشاهده می فرمایید. در جدول زیر M نشان دهنده طول تعریف شده برای داده و L نشان دهنده طول واقعی رشته داده شده می باشد.
نوع | مقدار | حافظه (بایت) |
---|---|---|
CHAR(M) |
0 <= M <= 255 |
M × w بایت. w تعداد بایت مورد نیاز برای حداکثر طول کاراکترهای تعریف شده در character set جدول می باشد. |
BINARY(M) |
0 <= M <= 255 |
M بایت |
VARCHAR(M) |
0 <= M <= 65532 |
L + 1 بایت اگر داده مورد نظر کمتر از ۲۵۵ بایت نیاز داشته باشد.L + 2 بایت اگر داده مورد نظر بیشتر از ۲۵۵ بایت نیاز داشته باشد. |
TINYTEXT |
L < 28 |
L + 1 بایت |
BLOB |
L < 216 |
L + 2 بایت |
TEXT |
L < 216 |
L + 2 بایت |
کلید خارجی ( FK ) و کلید اصلی ( PK ) : جهت پیاده سازی روابط میان جداول موجودیت های وابسته و صفات چند مقداری و همچنین دسترسی سریع به رکوردهای یک جدول از Primary Key , Foreign Key استفاده می کنیم.
کلید اصلی با نام id و با ویژگی های AUTO_INCREMENT ساخته می شود. این ستون در کوئری ها نباید مقدار دهی گردد و جنس آن باید از نوع عددی باشد.
کلید خارجی نیز از نوع کلید اصلی جدول اصلی باید باشد و همچنین مقدار دهی آن باید از مجموعه کلیدهای اصلی انتخاب گردد.
دیدگاهتان را بنویسید