انواع Data Type در SQL Server
Data Type در SQL Server
همانطور که در آموزش قبلی، آموزش ساخت Table دیدیم که برای ستون های جدول نیازمند مشخص کردن نوع آن هستیم
حالا در این آموزش قراره با انواع Data Type هایی که میتونیم در SQL Server استفاده کنیم آشنا شویم
و برای هرکدام از ستون های جدول دیتا تایپ صحیح به نسبت دیتایی که میخواهیم ذخیره کنیم داشته باشیم
2 – Approximate numeric
جهت ذخیره اعداد صحیح و اعشاری که نیاز به دقت بالا ندارند
- float
float [ (n) ]
که n دقت و فضای اشغال شده را مشخص می نماید محدوده این نوع داده از
1.79E+308-
تا
1.79E+308
است و
فضای اشغال شده با توجه به مقدار n تغییر میکند.
مقدار n می تواند عددی مابین ۱ تا ۵۳ باشد و مقدار default آن ۵۳ است .
- real
4 بایت فضا را اشغال میکیند و محدوده آن از
3.40E + 38 –
تا
3.40E + 38
می باشد.
3 – Date and Time
- Date
تاریخ میلادی با فضای اشغالی 3 بایت
- datetime2
تاریخ به همراه ساعت دقیق تا دقت 100 نانو ثانیه با توجه به دقت از 6 بایت تا 8 بایت
- datetime
تاریخ به همراه ساعت با دقت کمتر تا دقت هزارم ثانیه با فضای اشغالی 8 بایت
- Datetimeoffset
همانند datetime با لحاظ time zone و فضای 10 بایت بازای دقت 100 نانوثانیه
- Smalldatetime
تاریخ به همراه زمان دقت ان فقط تا ثانیه می باشد و 4 بایت فضا را اشغال میکند.
- Time
نگهداری ساعت بر اساس 24 ساعته و دقت ان تا 100 نانوثانیه می باشد فضای اشغالی 5 بایت با دقت پیشفرض 100 نانو ثانیه می باشد .
4 – Character Strings
نکته : Unicode یونیکد استاندار بین المللی است برای تبادل اطلاعات چند زبانه .
“یونیکد” به هر یک از حروف، کد ها یکتایی مستقل از محیط سیستم عامل و برنامه و زبان اختصاص میدهد.(کاملا مناسب برای فارسی)
- Char
Char[(n)]
نگهداری رشته کاراکتری با طول ثابت n که از یونیکد پشتیبانی نمی کند. و n که معرف طول رشته است می تواند از 1 تا 8000 باشد .
و فضای اشغالی جهت ذخیره نیز یک بایت بازای هر کاراکتر است . بنابراین در نهایت n بایت فضا اشغال خواهد شد. (تابع تنظیمات collation ) - varchar
varchar [ ( n | max ) ]
رشته کاراکتری با طول متغیر که از یونیکد پشتیبانی نمی کند n طول رشته را مشخص میکند و می تواند مقداری از 1 تا 8000 را داشته باشد. MAX : تعیین میکند که ماکزیمم فضای اشغالی 2^31-1 بایت یعنی 2 گیگابایت باشد فضای اشغالی برای ذخیره این نوع داده عبارتست از طول واقعی رشته وارد شده بعلاوه 2 بایت. - TEXT
ذخیره داده متنی غیر یونیکدی با ماکزیمم طول 2^31-1 . با توجه به این که در نسخه های آینده اس کیو ال سرور از این داده پشتیبانی نمی شود. لذا استفاده از آن برای طراحی دیتابیس های جدید توصیه نمی شود و شایسته است بجای آن از VARCHAR (MAX) استفاده شود .
5 – Unicode Character Strings
- nchar
nchar[(n)]
نگهداری رشته یونیکدی با طول ثابت n که n می تواند مقداری از 1 تا 4000 رابه خود بگیرد. برای ذخیره اطلاعات یونیکدی برای هر کاراکتر احتیاج به 2 بایت فضا می باشد. بنابراین فضای اشغالی 2n خواهد بود. - nvarchar
nvarchar [ ( n | max ) ]
رشته کاراکتری یونیکدی با طول متغیر که n می تواند بین 1 تا 4000 باشد . max مشخص میکند که ماکزیمم فضای ذخیره داده 2^31-1 یعنی 2 گیگا بایت است. فضای اشغال شده توسط این نوع داده عبارتست از 2 برابر طول رشته بعلاوه 2 بایت
6 – Binary Strings
- binary
binary [ ( n ) ]
دیتای باینری با طول ثابت n را درخود نگهداری میکند که n می تواند بین 1 تا 8000 باشد . فضای اشغال شده برابر با n بایت خواهد بود - varbinary
varbinary [ ( n | max) ]
دیتای باینری با طول متغیر که در آن n می تواند بین 1 تا 8000 باشد و max مشخص میکند که ماکزیمم فضای ذخیره 2^31-1 بایت خواهد بود . فضای اشغال شده توسط دیتا برابر است با طول واقعی دیتا بعلاوه 2 بایت - image
دیتای باینری با طول متغیر را در خود نگهداری میکند که طول ان می تواند بین 0 تا 2^31-1 باشد.
نکته در صورت عدم قید شده n در هرکدام از انواع دیتای شامل آن مقدار پیشفرض 1 می باشد
نکته : انواع داده text و ntext و image در نسخه های ینده اس کیو ال سرور حذف خواهند شد لذا از استفاده از آنها خود داری نمایید و بجای آنها از انواع داده nvarchat(max) , varchar(max) و varbinary(max) استفاده نمایید .
7 – Other Data Types
- Cursor
اشاره به یک کرسر - hierarchyid
معرفی یک موقعیت در یک ساختار سلسله مراتبی - sql_variant
ذخیره اطلاعاتی با انواع نوع داده های اس کیو ال در این نوع داده - table
نوع داده ایی که برای ذخیره نتیجه یک پروسه که دارای ساختار جدولی می باشد بکار میرود - Timestamp
این نوع داده اعداد باینری منحصر به فردی را بطور اتوماتیک تولید می کند و برای حل مسئله کابران همزمان کاربرد دارد . - Uniqueidentifier
یک GUID 16 بایتی ایجاد میکند - Xml
نوع داده ایی که برای ذخیره داده های با فرمت xml کاربرد دارد - spatial types
برای ذخیره داده های جغرافیایی و مختصات و اطلاعات gis ی کاربرد دارد .
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.