داده های متنی
| نوع داده | توضیحات | فضا | 
|---|---|---|
| char(n) | رشته ای با طول ثابت، حداکثر 8000 کاراکتر n می تواند عددی بین 1 تا 8000 باشد توجه: اگر 5=n باشد و 2 کاراکتر وارد کنید، 3 کاراکتر باقی مانده با Space پر می شود مزیت این نوع داده در جستجوی سریع آن است | n | 
| varchar(n) | رشته ای با طول متغیر، حداکثر 8000 کاراکتر توجه: اگر 5=n باشد و 2 کاراکتر وارد کنید، فقط به اندازه 2 کاراکتر فضا اشغال می شود (3 کاراکتر باقی مانده در نظر گرفته نمی شود) مزیت این نوع داده در میزان فضای استفاده شده است | |
| varchar(max) | رشته ای با طول متغیر، حداکثر 1,073,741,824 کاراکتر به جای n در مورد قبلی می توان از عبارت max استفاده کرد تا حداکثر فضای امکان پذیر در دسترس باشد | |
| text | رشته کاراکتر با طول متغیر، حداکثر 2GB داده متنی | 
داده های متنی Unicode
| نوع داده | توضیحات | فضا | 
|---|---|---|
| nchar(n) | داده Unicode با طول ثابت، حداکثر 4,000 کاراکتر میزان مصرف این نوع داده دو بایت به ازای هر کاراکتر است. بخاطر این موضوع، n باید بین یک تا چهار هزار تعیین شود | |
| nvarchar(n) | داده Unicode با طول متغیر، حداکثر 4,000 کاراکتر | |
| nvarchar(max) | داده Unicode با طول متغیر، حداکثر 536,870,912 کاراکتر | |
| ntext | داده Unicode با طول متغیر، حداکثر 2GB داده متنی | 
داده های Binary
| نوع داده | توضیحات | فضا | 
|---|---|---|
| bit | 0، 1 یا NULL | |
| binary(n) | داده باینری با طول ثابت حداکثر 8000 بایت | |
| varbinary(n) | داده باینری با طول متغیر حداکثر 8000 بایت | |
| varbinary(max) | داده باینری با طول متغیر حداکثر 2GB | |
| image | داده باینری با طول متغیر حداکثر 2GB | 
داده های عددی
| نوع داده | توضیحات | فضا | 
|---|---|---|
| tinyint | اعداد صحیح بین 0 تا 255 | 1 byte | 
| smallint | اعداد صحیح بین 32,767 تا 32,768- | 2 bytes | 
| int | اعداد صحیح بین 2,147,483,647 تا 2,147,483,648 - | 4 bytes | 
| bigint | اعداد صحیح بین 9,223,372,036,854,775,807 تا 9,223,372,036,854,775,808- که معادل از منفی 263 تا 263 منهای یک است | 8 bytes | 
| decimal(p,s) | اعداد با مقیاس (scale) و دقت (precision) ثابت | 5-17 bytes | 
| numeric(p,s) | اعداد با مقیاس (scale) و دقت (precision) ثابت | 5-17 bytes | 
| smallmoney | داده های ارزی بین 214,748.3648- تا 214,748.3647 | 4 bytes | 
| money | داده های ارزی بین 922,337,203,685,477.5808- تا 922,337,203,685,477.5807 | 8 bytes | 
| float(n) | برای نگهداری اعداد غیر صحیح با تعداد ارقام اعشار متغیر و یا تخمـینـی استفاده میشود (from -1.79E + 308 to 1.79E + 308) | 4 یا 8 bytes | 
| real | برای نگهداری اعداد غیر صحیح با تعداد ارقام اعشار متغیر و یا تخمـینـی استفاده میشود (from -3.40E + 38 to 3.40E + 38) | 4 bytes | 
داده های تاریخ و زمان
این نوع فیلدها برای نگهداری تاریخ میلادی و ساعت استفاده میشود و برای تاریخ شمسی کاربردی ندارد.
| نوع داده | توضیحات | فضا | 
|---|---|---|
| datetime | از تاریخ اول January سال 1753 تا سی ویکم December سال 9999 با دقت 3.33 میلی ثانیه | 8 bytes | 
| datetime2 | از تاریخ اول January سال 0001 (01/01/0001) تا سی ویکم December سال 9999 (31/12/9999) با دقت 100 نانو ثانیه | 6-8 bytes | 
| smalldatetime | از تاریخ اول January سال 1900 تا ششم June سال 2079 با دقت یک دقیقه | 4 bytes | 
| date | فقط تاریخ را ذخیره می کند. از تاریخ اول January سال 0001 (01/01/0001) تا سی ویکم December سال 9999(31/12/9999) | 3 bytes | 
| time | فقط زمان را ذخیره می کند با دقت 100 نانو ثانیه | 3-5 bytes | 
| datetimeoffset | مشابه datetime2 می باشد به علاوه timeoffset را ذخیره می کند | 8-10 bytes | 
| timestamp | هر زمان سطری ایجاد یا تغییر داده می شود، یک عدد یکتا ذخیره می شود. داده timestamp وابسته به ساعت داخلی سیستم می باشد و با زمان واقعی مطابقت ندارد. هر جدولی ممکن است یک timestamp متفاوت داشته باشد. به عبارت دیگر در این فیلد ۸ بایتی، تایم لحظهای اجرای دستور نگهداری میشود و کاربرد آن کنترل بروزرسانی همزمان (Concurrency) اطلاعات توسط چند کاربر است. البته در تعداد رکوردهای پایین به کار نمیآید و بیشتر زمانی مورد نیاز است که تعداد رکوردها خیلی زیاد باشد مثلاً ۱۰۰ میلیون رکورد! | 
انواع داده ای دیگر
| نوع داده | توضیحات | 
|---|---|
| sql_variant | این نوع فیلد، به جز داده های text, ntext, timestamp برای نگهداری انواع داده های دیگر استفاده میشود و نوع آن با توجه به اولین مقداری که در آن قرار میگیرد تعیین خواهد شد. (حداکثر 8000 بایت) چون نوع و حجم فیلد مشخص نیست، لذا تنها یک اشارهگر ۱۶ بایتی در آن قرار گرفته و داده اصلی در فایل جداگانه نگهداری میشود. استفاده از این نوع فیلد، توصیه نمیگردد. | 
| uniqueidentifier | این فیلد ۱۶ بایتی، به ما کدی Unique یا یکتا میدهد که به اصطلاح GUID میگویند. یکی از کاربردهای آن در Replication است. | 
| xml | داده هایی با فرمت XML را ذخیره می کند. (حداکثر 2GB) این فیلد بیشتر برای انتقال اطلاعات و دستورات تحت web استفاده میشود و شامل انواع MetaData های مختلف است. این فیلد در SQL 2005 معرفی گردید. | 
| cursor | این فیلد مربوط به کنترل Cursor است و مرجع یک Cursor در آن ذخیره می شود | 
| table | نتیجه یک کوری را برای عملیاتهای بعدی ذخیره می کند. |