فهرست سرفصل‌های MySQL
خانه (HOME) مقدمه (Intro) پایگاه داده رابطه ای (RDBMS) SQL (SQL) SELECT (SELECT) WHERE (WHERE) عملگرهای AND, OR, NOT (AND, OR, NOT) مرتب سازی (ORDER BY) افزودن رکورد (INSERT INTO) مقادیر NULL (NULL Values) بروزرسانی (UPDATE) حذف (DELETE) محدودیت تعداد (LIMIT) کمینه و بیشینه (MIN and MAX) COUNT، AVG، SUM (COUNT, AVG, SUM) LIKE (LIKE) کاراکترهای عام (Wildcards) IN (IN) BETWEEN (BETWEEN) نام های مستعار (Aliases) اتصال ها (Joins) INNER JOIN (INNER JOIN) LEFT JOIN (LEFT JOIN) RIGHT JOIN (RIGHT JOIN) CROSS JOIN (CROSS JOIN) خود-اتصالی (Self Join) UNION (UNION) UNION ALL (UNION ALL) گروه بندی (GROUP BY) HAVING (HAVING) EXISTS (EXISTS) ANY و ALL (ANY, ALL) INSERT SELECT (INSERT SELECT) CASE (CASE) توابع Null (Null Functions) کامنت ها (Comments) عملگرها (Operators) ایجاد پایگاه داده (Create DB) حذف پایگاه داده (Drop DB) ایجاد جدول (Create Table) حذف جدول (Drop Table) تغییر جدول (Alter Table) قیود (Constraints) Not Null (Not Null) منحصر به فرد (Unique) کلید اصلی (Primary Key) کلید خارجی (Foreign Key) CHECK (Check) پیش فرض (Default) ایندکس (Create Index) افزایش خودکار (Auto Increment) تاریخ ها (Dates) نماها (Views) انواع داده (Data Types) توابع (MySQL Functions) ASCII (ASCII) CHAR_LENGTH (CHAR_LENGTH) CHARACTER_LENGTH (CHARACTER_LENGTH) CONCAT (CONCAT) CONCAT_WS (CONCAT_WS) FIELD (FIELD) FIND_IN_SET (FIND_IN_SET) FORMAT (FORMAT) INSERT (INSERT) INSTR (INSTR) LCASE (LCASE) LEFT (LEFT) LENGTH (LENGTH) LOCATE (LOCATE) LOWER (LOWER) LPAD (LPAD) LTRIM (LTRIM) MID (MID) POSITION (POSITION) REPEAT (REPEAT) REPLACE (REPLACE) REVERSE (REVERSE) RIGHT (RIGHT) RPAD (RPAD) RTRIM (RTRIM) SPACE (SPACE) STRCMP (STRCMP) SUBSTR (SUBSTR) SUBSTRING (SUBSTRING) SUBSTRING_INDEX (SUBSTRING_INDEX) TRIM (TRIM) UCASE (UCASE) UPPER (UPPER) ABS (ABS) ACOS (ACOS) ASIN (ASIN) ATAN (ATAN) ATAN2 (ATAN2) AVG (AVG) CEIL (CEIL) CEILING (CEILING) COS (COS) COT (COT) COUNT (COUNT) DEGREES (DEGREES) DIV (DIV) EXP (EXP) FLOOR (FLOOR) GREATEST (GREATEST) LEAST (LEAST) LN (LN) LOG (LOG) LOG10 (LOG10) LOG2 (LOG2) MAX (MAX) MIN (MIN) MOD (MOD) PI (PI) POW (POW) POWER (POWER) RADIANS (RADIANS) RAND (RAND) ROUND (ROUND) SIGN (SIGN) SIN (SIN) SQRT (SQRT) SUM (SUM) TAN (TAN) TRUNCATE (TRUNCATE) ADDDATE (ADDDATE) ADDTIME (ADDTIME) CURDATE (CURDATE) CURRENT_DATE (CURRENT_DATE) CURRENT_TIME (CURRENT_TIME) CURRENT_TIMESTAMP (CURRENT_TIMESTAMP) CURTIME (CURTIME) DATE (DATE) DATEDIFF (DATEDIFF) DATE_ADD (DATE_ADD) DATE_FORMAT (DATE_FORMAT) DATE_SUB (DATE_SUB) DAY (DAY) DAYNAME (DAYNAME) DAYOFMONTH (DAYOFMONTH) DAYOFWEEK (DAYOFWEEK) DAYOFYEAR (DAYOFYEAR) EXTRACT (EXTRACT) FROM_DAYS (FROM_DAYS) HOUR (HOUR) LAST_DAY (LAST_DAY) LOCALTIME (LOCALTIME) LOCALTIMESTAMP (LOCALTIMESTAMP) MAKEDATE (MAKEDATE) MAKETIME (MAKETIME) MICROSECOND (MICROSECOND) MINUTE (MINUTE) MONTH (MONTH) MONTHNAME (MONTHNAME) NOW (NOW) PERIOD_ADD (PERIOD_ADD) PERIOD_DIFF (PERIOD_DIFF) QUARTER (QUARTER) SECOND (SECOND) SEC_TO_TIME (SEC_TO_TIME) STR_TO_DATE (STR_TO_DATE) SUBDATE (SUBDATE) SUBTIME (SUBTIME) SYSDATE (SYSDATE) TIME (TIME) TIME_FORMAT (TIME_FORMAT) TIME_TO_SEC (TIME_TO_SEC) TIMEDIFF (TIMEDIFF) TIMESTAMP (TIMESTAMP) TO_DAYS (TO_DAYS) WEEK (WEEK) WEEKDAY (WEEKDAY) WEEKOFYEAR (WEEKOFYEAR) YEAR (YEAR) YEARWEEK (YEARWEEK) BIN (BIN) BINARY (BINARY) CASE (CASE) CAST (CAST) COALESCE (COALESCE) CONNECTION_ID (CONNECTION_ID) CONV (CONV) CONVERT (CONVERT) CURRENT_USER (CURRENT_USER) DATABASE (DATABASE) IF (IF) IFNULL (IFNULL) ISNULL (ISNULL) LAST_INSERT_ID (LAST_INSERT_ID) NULLIF (NULLIF) SESSION_USER (SESSION_USER) SYSTEM_USER (SYSTEM_USER) USER (USER) VERSION (VERSION) مثال ها (MySQL Examples) ویرایشگر (MySQL Editor) آزمون (MySQL Quiz) تمارین (MySQL Exercises) سرفصل (MySQL Syllabus) برنامه مطالعه (MySQL Study Plan) گواهینامه (MySQL Certificate)
نتیجه‌ای برای جستجو یافت نشد.
MySQL

MySQL — انواع داده (Data Types)

آخرین بروزرسانی: 1404/08/18

انواع داده (Data Types)

در MySQL، «انواع داده (Data Types)» مشخص می کنند هر ستون چه چیزی نگه دارد. این یعنی متن، عدد، پول، تاریخ و زمان، یا باینری. انتخاب درست نوع داده، کارایی و درستی اطلاعات را بهتر می کند.

سه خانواده اصلی در MySQL 8.0

هر ستون نام و نوع داده دارد. هنگام ساخت جدول، باید نوع داده مناسب را انتخاب کنیم. در MySQL سه گروه اصلی داریم: رشته ای، عددی، و تاریخ/زمان.

رشته ای (String)

برای متن ها از CHAR و VARCHAR استفاده می شود. CHAR طول ثابت دارد؛ VARCHAR طول متغیر. برای متن های بلندتر از TEXT و برای داده باینری از BLOBها استفاده می شود. ENUM فقط یک مقدار از لیست می پذیرد. SET صفر تا چند مقدار از لیست را نگه می دارد.

عددی (Numeric)

برای اعداد کوچک و بزرگ، از TINYINT تا BIGINT داریم. برای اعشاری ها از FLOAT، DOUBLE و DECIMAL استفاده می شود. DECIMAL دقت ثابت و دقیق برای مالی دارد. همه انواع عددی می توانند UNSIGNED یا ZEROFILL داشته باشند.

نکته: UNSIGNED اعداد منفی را ممنوع می کند. ZEROFILL نمایش را با صفر پر می کند و به صورت خودکار UNSIGNED را هم فعال می کند.

تاریخ و زمان (Date & Time)

برای تاریخ تنها از DATE استفاده کنید. برای تاریخ و زمان ترکیبی، DATETIME و TIMESTAMP موجود است. TIMESTAMP بر پایه ثانیه های یونیکس است و بازه مشخصی دارد. برای زمان تنها از TIME، و برای سال از YEAR استفاده می شود.

راهنمای انتخاب سریع

متن کوتاه؟ CHAR یا VARCHAR. متن خیلی بلند؟ TEXT. فایل/باینری؟ BLOB. شمارنده دقیق مالی؟ DECIMAL. عدد صحیح بزرگ؟ BIGINT. نیاز به تاریخ و زمان؟ DATETIME یا TIMESTAMP.

جمع بندی سریع

  • نوع داده، محدوده مجاز ستون را تعیین می کند.
  • سه گروه: رشته ای، عددی، تاریخ/زمان.
  • ENUM یک مقدار از لیست می گیرد.
  • SET چند مقدار از لیست می گیرد.
  • UNSIGNED منفی را حذف می کند؛ ZEROFILL صفر اضافه می کند.

مطالب مرتبط: نماها (Views) برای نمایش داده مجازی. همچنین تاریخ ها (Dates) برای کار با تاریخ.

بیشتر بخوانید: انواع داده MySQL به عنوان مرجع این بخش.