Sql Data Types

Microsoft Access、MySQL 以及 SQL Server 所使用的数据类型和范围。

Microsoft Access 数据类型

نوع البيانات وصف تخزين
Text 用于文本或文本与数字的组合。最多 255 个字符。  
Memo

Memo 用于更大数量的文本。最多存储 65,536 个字符。

注释:无法对 memo 字段进行排序。不过它们是可搜索的。

 
Byte 允许 0 到 255 的数字。 1 بايت
Integer 允许介于 -32,768 到 32,767 之间的数字。 2 بايت
Long 允许介于 -2,147,483,648 与 2,147,483,647 之间的全部数字 4 بايت
Single 单精度浮点。处理大多数小数。 4 بايت
Double 双精度浮点。处理大多数小数。 8 بايت
Currency

用于货币。支持 15 位的元,外加 4 位小数。

提示:您可以选择使用哪个国家的货币。

8 بايت
AutoNumber AutoNumber 字段自动为每条记录分配数字,通常从 1 开始。 4 بايت
Date/Time 用于日期和时间 8 بايت
Yes/No

逻辑字段,可以显示为 Yes/No、True/False 或 On/Off。

在代码中,使用常量 True 和 False (等价于 1 和 0)

注释:Yes/No 字段中不允许 Null 值

1 比特
Ole Object 可以存储图片、音频、视频或其他 BLOBs (Binary Large OBjects) 最多 1GB
Hyperlink 包含指向其他文件的链接,包括网页。  
Lookup Wizard Yana amincewa da samar da tsafta na yau'a da za a iya zartarwa daga dancin da ke kusa. 4 بايت

Nau'in da ke aiki a MySQL

A cikin MySQL, akwai uku nau'i na nau'in da ke da: tirin, lamba da lokacin / lokacin.

Tirin Text:

نوع البيانات وصف
CHAR(size) A tasiya littafin da yankuna da yake tsawon lafiya (za a iya kira haruffu, lamba da fim na special). Ana ci gaba da samar da tsawon littafin a cikin abin da ke kusa. Akaiwace 255 takaita haruffa.
VARCHAR(size)

A tasiya littafin da yankuna da zai iya sha (za a iya kira haruffu, lamba da fim na special). Ana ci gaba da samar da tsawon littafin a cikin abin da ke kusa. Akaiwace 255 takaita haruffa.

توضیح: اگر طول مقدار بیشتر از 255 باشد، به نوع TEXT تبدیل می‌شود.

TINYTEXT حداکثر طول 255 کاراکتر رشته ذخیره می‌شود.
TEXT حداکثر طول 65,535 کاراکتر رشته ذخیره می‌شود.
BLOB برای BLOBs (Large Binary Objects) استفاده می‌شود. حداکثر 65,535 بایت داده ذخیره می‌شود.
MEDIUMTEXT حداکثر طول 16,777,215 کاراکتر رشته ذخیره می‌شود.
MEDIUMBLOB برای BLOBs (Large Binary Objects) استفاده می‌شود. حداکثر 16,777,215 بایت داده ذخیره می‌شود.
LONGTEXT حداکثر طول 4,294,967,295 کاراکتر رشته ذخیره می‌شود.
LONGBLOB برای BLOBs (Large Binary Objects) استفاده می‌شود. حداکثر 4,294,967,295 بایت داده ذخیره می‌شود.
ENUM(x,y,z,etc.)

اجازه می‌دهد لیست مقادیر ممکن را وارد کنید. می‌توانید بیشترین 65535 مقدار را در لیست ENUM قرار دهید. اگر مقدار ورودی در لیست وجود نداشته باشد، مقدار خالی وارد می‌شود.

توضیح: این مقادیر به ترتیب ورودی شما ذخیره می‌شوند.

ممکن است به این شکل ورودی شود: ENUM('X','Y','Z')

SET مانند ENUM،SET بیشترین تعداد 64 آیتم لیستی را می‌تواند داشته باشد، اما SET می‌تواند بیش از یک مقدار را ذخیره کند.

نوع Number:

نوع البيانات وصف
TINYINT(size) -128 تا 127 معمولی. 0 تا 255 بدون علامت*. بزرگترین تعداد دفعات در گوشه‌ها مشخص شده است.
SMALLINT(size) -32768 تا 32767 معمولی. 0 تا 65535 بدون علامت*. بزرگترین تعداد دفعات در گوشه‌ها مشخص شده است.
MEDIUMINT(size) -8388608 تا 8388607 معمولی. 0 تا 16777215 بدون علامت*. بزرگترین تعداد دفعات در گوشه‌ها مشخص شده است.
INT(size) -2147483648 تا 2147483647 معمولی. 0 تا 4294967295 بدون علامت*. بزرگترین تعداد دفعات در گوشه‌ها مشخص شده است.
BIGINT(size) -9223372036854775808 تا 9223372036854775807 معمولی. 0 تا 18446744073709551615 بدون علامت*. بزرگترین تعداد دفعات در گوشه‌ها مشخص شده است.
FLOAT(size,d) با نقطه کوچک شناور کوچکترین عدد. بزرگترین تعداد دفعات در گوشه‌ها مشخص شده است. بزرگترین تعداد دفعات سمت راست از پارامتر d مشخص شده است.
DOUBLE(size,d) اعداد بزرگ با نقطه‌ی شناور. در گوشه‌ها تعداد بیشترین دفعات را مشخص می‌کنید. در پارامتر d تعداد بیشترین دفعات بعد از نقطه را مشخص می‌کنید.
DECIMAL(size,d) نوع DOUBLE به عنوان رشته‌ی ذخیره شده، اجازه‌ی استفاده از نقطه‌ی ثابت دارد.

* این نوع‌های عددی دارای گزینه‌ی UNSIGNED اضافی هستند. معمولاً عدد می‌تواند منفی یا مثبت باشد. اگر ویژگی UNSIGNED اضافه شود، محدوده از 0 آغاز می‌شود، نه یک عدد منفی.

نوع البيانات Date:

نوع البيانات وصف
DATE()

تاریخ. فرمت: YYYY-MM-DD

توضیح: محدوده‌ی پشتیبانی از '1000-01-01' تا '9999-12-31' است.

DATETIME()

* ترکیب تاریخ و زمان. فرمت: YYYY-MM-DD HH:MM:SS

توضیح: محدوده‌ی پشتیبانی از '1000-01-01 00:00:00' تا '9999-12-31 23:59:59' است.

TIMESTAMP()

* زمان‌موجودی. مقادیر TIMESTAMP با استفاده از توضیح Unix Epoch ('1970-01-01 00:00:00' UTC) تا امروز ذخیره می‌شوند. فرمت: YYYY-MM-DD HH:MM:SS

توضیح: محدوده‌ی پشتیبانی از '1970-01-01 00:00:01' UTC تا '2038-01-09 03:14:07' UTC است.

TIME()

زمان. فرمت: HH:MM:SS

توضیح: محدوده‌ی پشتیبانی از '-838:59:59' تا '838:59:59' است.

YEAR()

سال به فرمت 2 یا 4 رقمی.

توضیح: مقادیر مجاز برای فرمت 4 رقمی: 1901 تا 2155. مقادیر مجاز برای فرمت 2 رقمی: 70 تا 69، نشان‌دهنده‌ی بازه‌ی 1970 تا 2069 است.

* حتی اگر DATETIME و TIMESTAMP به فرمت مشابهی بازمی‌گردند، روش کار آن‌ها بسیار متفاوت است. در جستجوهای INSERT یا UPDATE، TIMESTAMP به طور خودکار تاریخ و زمان فعلی را تنظیم می‌کند. TIMESTAMP همچنین فرمت‌های مختلفی را می‌پذیرد، مانند YYYYMMDDHHMMSS، YYMMDDHHMMSS، YYYYMMDD یا YYMMDD.

نوع داده‌ی SQL Server

رشته‌ی Character:

نوع البيانات وصف تخزين
char(n) رشته‌ی ثابت‌الطول. حداکثر 8,000 کاراکتر. n
varchar(n) فارغ‌الطول متغیر. حداکثر 8,000 کاراکتر.  
varchar(max) فارغ‌الطول متغیر. حداکثر 1,073,741,824 کاراکتر.  
text فارغ‌الطول متغیر. حداکثر 2GB داده‌های کاراکتری.  

السلسلة Unicode:

نوع البيانات وصف تخزين
nchar(n) بيانات Unicode ثابتة الطول. يصل إلى 4,000 حرف.  
nvarchar(n) بيانات Unicode متغيرة الطول. يصل إلى 4,000 حرف.  
nvarchar(max) بيانات Unicode متغيرة الطول. يصل إلى 536,870,912 حرف.  
ntext بيانات Unicode متغيرة الطول. يصل إلى 2GB من البيانات الحرفية.  

نوع Binary:

نوع البيانات وصف تخزين
bit يُسمح بـ 0 أو 1 أو NULL  
binary(n) بيانات ثنائية ثابتة الطول. يصل إلى 8,000 بايت.  
varbinary(n) بيانات ثنائية متغيرة الطول. يصل إلى 8,000 بايت.  
varbinary(max) بيانات ثنائية متغيرة الطول. يصل إلى 2GB بايت.  
image بيانات ثنائية متغيرة الطول. يصل إلى 2GB.  

نوع Number:

نوع البيانات وصف تخزين
tinyint يُسمح بجميع الأرقام بين 0 إلى 255. 1 بايت
smallint يُسمح بجميع الأرقام بين -32,768 و 32,767. 2 بايت
int يُسمح بجميع الأرقام بين -2,147,483,648 و 2,147,483,647. 4 بايت
bigint يُسمح بجميع الأرقام بين -9,223,372,036,854,775,808 و 9,223,372,036,854,775,807. 8 بايت
decimal(p,s)

أرقام ثابتة الدقة والمقارنة.

يُشير معامل p إلى أكبر عدد من الأرقام التي يمكن تخزينها (إلى اليسار واليمن من النقطة). يجب أن يكون p قيمة بين 1 و 38. القيمة الافتراضية هي 18.

يُشير معامل s إلى أكبر عدد من الأرقام التي يمكن تخزينها إلى اليمين من النقطة. يجب أن يكون s قيمة بين 0 و p. القيمة الافتراضية هي 0.

5-17 بايت
numeric(p,s)

أرقام ثابتة الدقة والمقارنة.

يُشير معامل p إلى أكبر عدد من الأرقام التي يمكن تخزينها (إلى اليسار واليمن من النقطة). يجب أن يكون p قيمة بين 1 و 38. القيمة الافتراضية هي 18.

يُشير معامل s إلى أكبر عدد من الأرقام التي يمكن تخزينها إلى اليمين من النقطة. يجب أن يكون s قيمة بين 0 و p. القيمة الافتراضية هي 0.

5-17 بايت
smallmoney بيانات مالية بين -214,748.3648 و 214,748.3647. 4 بايت
money بيانات مالية بين -922,337,203,685,477.5808 و 922,337,203,685,477.5807. 8 بايت
float(n)

رقم بيانات ديناميكي من -1.79E + 308 إلى 1.79E + 308.

امكانية n تُشير إلى ما إذا كان الحقل يحتوي على 4 بايت أم 8 بايت. float(24) يحتوي على 4 بايت، بينما float(53) يحتوي على 8 بايت. القيمة الافتراضية لن تكون سوى 53.

4 أو 8 بايت
real رقم ذو دقة متنقلة من -3.40E + 38 إلى 3.40E + 38. 4 بايت

نوع البيانات Date:

نوع البيانات وصف تخزين
datetime من 1 يناير 1753 إلى 31 ديسمبر 9999، دقة 3.33 ملي ثانية. 8 بايت
datetime2 من 1 يناير 1753 إلى 31 ديسمبر 9999، دقة 100 نانو ثانية. 6-8 بايت
smalldatetime من 1 يناير 1900 إلى 6 يونيو 2079، دقة دقيقة. 4 بايت
date يخزن التاريخ فقط. من 1 يناير 0001 إلى 31 ديسمبر 9999. 3 بايت
time يخزن الوقت فقط. دقة 100 نانو ثانية. 3-5 بايت
datetimeoffset مثل datetime2، بالإضافة إلى تحويل الوقت الزمني. 8-10 بايت
timestamp تخزين رقم فريد، يتم تحديثه كلما تم إنشاء أو تعديل صفة ما. timestamp تعتمد على الساعة الداخلية وليس لها علاقة بالوقت الحقيقي. يمكن أن يكون لكل جدول timestamp واحد فقط.  

نوع البيانات الأخرى:

نوع البيانات وصف
sql_variant تخزين بيانات مختلفة من نوع البيانات المختلفة، باستثناء text، ntext، و timestamp. يصل إلى 8,000 بايت.
uniqueidentifier تخزين معرفات الهوية العالمية (GUID).
xml تخزين البيانات الم格式ة بتنسيق XML. يصل إلى 2GB.
مؤشر تخزين الإشارات المرجعية المستخدمة في العمليات التي تتم على قاعدة البيانات.
طاولة تخزين النتائج، لمعالجتها لاحقاً.