آشنایی با انواع داده ها در SQL Server 2019


آشنایی با انواع داده ها در SQL Server 2019
برای خرید این درس نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.

انواع داده ها در SQL Server 2019

در این جلسه می‌خواهیم در مورد انواع داده‌ها در sql server 2019 صحبت کنیم. یکی از اجزای اصلی زبان‌های برنامه نویسی نوع داده‌ها می‌باشند. اینکه در sql شما چه نوع داده‌ای را ذخیره کنید خیلی مهم است و این نرم افزار امکان ذخیره سازی داده‌ها را دارد. پس به عنوان یک برنامه‌نویس در حوزه sql server، باید بدانید نوع داده‌هایی که می‌پذیرد از چه نوعی است. برای آشنایی بیشتر در ادامه همراه ما باشید.

انواع داده‌ها در sql server 2019:

  • نوع داده عددی

نوع داده فضای
ذخیره‌سازی
توضیحات
Bit 1بیت مقادیر قابل ذخیره ‌سازی 0، 1 و Null می‌باشد.
TinyInt 1 بایت مقادیری بین 0 الی 255 را ذخیره می‌کند.
SmallInt 2 بایت  32767 الی 32768-
Int 4 بایت 31^2
BigInt 8 بایت 63^2
Numeric 5 الی 17 بایت  از این نوع داده برای ذخیره داده‌های اعشاری دارای ممیز بدون گرد کردن استفاده می‌شود و محدوده 1-38^10- تا 1-38^10 را در برمی‌گیرد. این نوع شبیه به Decimal بوده و توصیه می‌شود از Decimal به جای Numeric استفاده شود.
Decimal 5 الی 17 بایت همان‌طور که در بالا گفتیم این نوع داده با Numeric مشابه هم می‌باشند هم از نظر کارایی و هم از نظر محدوده عددی.
SmallMoney 4 بایت برای اعدادی که مربوط به پول است، استفاده می‌شود. این نوع داده تنها 4 رقم عدد در سمت راست ممیز اعشار، ذخیره خواهد کرد.
Money 8 بایت برای اعدادی که مربوط به پول است، استفاده شده و قسمت اعشار به 4 رقم گرد می‌شود.
Real 4 بایت برای ذخیره اعداد اعشاری استفاده می‌شود.
Float(n) 4 یا 8 بایت برای ذخیره اعداد اعشاری استفاده می‌شود. در صورتی که n
1 ≤ n ≤ 24 = 4 Byte
25 ≤ n ≤ 53 = 8 Byte

نکته: برای نوع داده Numeric و Decimal می‌توانیم تعداد ارقام و اعشار آن‌ها را مشخص کنیم. مثلا در Numeric(4,2)، عدد اول تعداد رقم‌ها و عدد دوم تعداد اعشار را نشان می‌دهد.

  • نوع داده رشته‌ای

نوع داده فضای
ذخیره‌سازی
توضیحات          
Char(n)  1 بایت برای هر کاراکتر، به تعداد n تاحداکثر 8000 بایت       رشته‌ای با طول ثابت؛ اگر برای ستونی 20 کاراکتر در نظر بگیریم و  مقداری که وارد کردیم کمتر از 20 باشد فضای باقی‌مانده با space پر می‌شود.  
VarChar(n) 1 بایت برای هر کاراکتر، به تعداد n تا حداکثر 8000 بایت رشته‌ای با طول متغیر؛ اگر برای ستونی 20 کاراکتر در نظر بگیریم به این معناست که حداکثر کاراکتر وارد شده می‌تواند 20 کاراکتر باشد و اگر مقداری کمتر وارد شد به همان اندازه فضا اشغال می‌کند و اتلاف حافظه ندارد.
VarChar(max) 1 بایت برای هر کاراکتر، حداکثر 2  گیگابایت مانند نوع داده بالا می‌باشد که می‌توانیم بدون محدودیت داده ذخیره کنیم.
NChar(n) 2 بایت برای هر کاراکتر به تعداد n تا حداکثر 4000 بایت از این نوع داده به بعد داده‌ها بصورت Unicode ذخیره می‌شوند. این نوع داده دارای طول ثابتی است و برای ذخیره داده‌هایی با زبان فارسی از این نوع استفاده می‌شود.
NVarChar(n) 2 بایت برای هر کاراکتر به تعداد n تا حداکثر 4000 بایت  برای ذخیره داده‌ها با طول متغیر در ستون‌ها و برای زبان فارسی از آن استفاده می‌شود.
NVarChar(max)  2 بایت برای هر کاراکتر، حداکثر2  گیگابایت برای ذخیره داده‌هایی با زبان فارسی و طول متغیر با بیش از 8000 کاراکتر استفاده می‌شود.
  • نوع داده تاریخ و زمان

نوع داده دامنه مقدار دقت فضای ذخیره‌سازی
SmllDataTime 1900/01/01 - 2079/06/06 1 دقیقه 4 بایت
DataTime 1753/01/01 – 9999/12/31 0.00333 ثانیه 8 بایت
DataTime2(FSP)  0001/01/01 – 9999/12/31 100 نانو ثانیه 6 تا 8 بایت
DataTimeOffset(FSP) 0001/01/01 – 9999/12/31   100 نانو ثانیه  8 تا 10 بایت
Data  0001/01/01 – 9999/12/31 1 روز 3 بایت
Time(FSP)  00:00:00.0000000 – 23:59:59.9999999 100 نانو ثانیه 3 تا 5 بایت
  • دیگر انواع داده‌ها

نوع داده توضیحات
sql_variant با استفاده از این نوع داده می‌توانید ردیف‌هایی با انواع داده‌های متفاوت داشته باشید و در ستون‌ها ، پارامترها، متغیرها و مقادیر بازگشتی توابع تعریف شده توسط کاربر نیز مورد استفاده قرار می‌گیرد. در واقع این نوع قادر می‌سازد تا datatypeهای دیگر نیز ساپورت شود.
uniqueidentifier برای استفاده از این نوع داده دور روش وجود دارد: استفاده از تابع NEWID و روش دیگر، تبدیل یک رشته ثابت به فرم. این نوع داده در واقع یک کد یکتا به ما می‌دهد و یکی از کاربردهای آن استفاده در Replication می‌باشد.
xml از این نوع داده برای ذخیره متغیرهایی با نوع XML و انتقال اطلاعات و دستورات تحت  web استفاده می‌شود.
cursor ذخیره متغیرهای OUTPUT مربوط به store proceduere. این نوع داده به هنگام ایجاد یک table،  مورد استفاده قرار نمی‌گیرد و تمام متغیرهای ایجاد شده با این نوع داده nullable هستند.
table این نوع داده که جزء انواع داده‌های ویژه محسوب می‌شود، مجموعه‌ای از نتایج برای پردازش در زمان‌های دیگر را ذخیره می‌نماید.

کلام آخر:

خب دوستان به انواع داده‌ها در sql server پرداختیم ولی پیشنهاد می‌کنم برای فهم عمیق‌تر این مفاهیم حتما ویدئو آموزشی ما را در اینباره مشاهده کنید، چراکه مثال‌هایی گفته شده تا به صورت جزئی‌تر با آنها آشنا شوید. حتما نظرات و پیشنهادات خود را با ما به اشتراک بگذارید و اگر سوالی در حیطه آموزش این قسمت داشتید به انجمن ما مراجعه کنید.

انجمن متخصصان پایگاه داده


نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد .
برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.


مشخصات دوره


مدرس دوره : مهدی عباسی
تعداد جلسات 71 جلسه
مدت زمان 1626 دقیقه
حجم دوره 5/57 گیگابایت
سطح مهارت مقدماتی تا پیشرفته
وضعیت دوره پایان یافته
: میانگین امتیاز

540,000تومان
برای دسترسی به این دوره وارد یا عضو شوید.
مهدی عباسی

مهدی عباسی


درباره مدرس :

مهدی عباسی هستم، مسلط به حداقل ۲۰ زبان مطرح برنامه نویسی به صورت پیشرفته، مدیر عامل شرکت آریا نرم افزار و بنیانگذار آکادمی آنلاین درسمن، مسلط به تدریس دروس تخصصی کاردانی و کارشناسی کامپیوتر، پایگاه داده ... ده ها، برنامه نویسی پیشرفته، مبانی برنامه نویسی، مباحث ویژه طراحی وب و ....بیشتر بدانید