با سلام خدمت کاربران گرامی سایت پی وی لرن و کاربرانی که علاقمند به یادگیری دوره آموزش تی اس کیو ال T-SQL هستند. در جلسه گذشته آموزش کار با Indexes در تی اس کیو ال را در اختیار علاقمندان دوره T-SQL قرار دادیم. در این جلسه آموختید که در ابتدای آموزش کار با Transactions در تی اس کیو ال باید گفت که Transactions یک واحد کار است که در برابر یک پایگاه داده صورت می گیرد.به عبارت دیگر Transactions یک واحد یا دنباله ای از کار است که به ترتیب منطقی انجام می شود. در این جلسه آموزش کار با Indexes در تی اس کیو ال را به شما ارائه خواهیم نمود.
Indexes ها table خاصی هستند که موتور جستجوی پایگاه داده می تواند برای سرعت بخشیدن به بازیابی اطلاعات استفاده کند.
به عبارت ساده، یک Index یک اشاره گر به داده ها در یک table است.
یک Index در یک پایگاه داده بسیار شبیه یک Index در فهرست یک کتاب است.
برای مثال برای دسترسی سریع به یک موضوع در یک کتاب به فهرست آن رجوع می کنید.
در فهرست کتاب همه مطالب را به صورت حروف الفبا فهرست شده و به هر موضوع شماره صفحه اختصاص داده شده است.
یک index موجب سریع تر شدن عملکرد SELECT queries و WHERE clauses می شود.
اما index ها سبب می شوند که data input به وسیله UPDATE و INSERT statements می شوند.
index ها می توانند ساخته شده و یا روی داده تاثیری نداشته باشند.
ساختن یک index شامل CREATE INDEX statement می شود که اجازه نام گذاری index برای مشخص سازی table و ستون های آن و ستون های index و تعیین صعودی و نزولی بودن index را می دهد.
index ها می توانند مانند UNIQUE constraint منحصر به فرد باشند.
در UNIQUE constraint ایندکس مانع ورود مطالب تکراری به ستون ها و یا ترکیبی از ستون های فهرست می شود.
در زیر می توانید سینتکس اصلی CREATE INDEX را مشاهده نمایید.
1 | CREATE INDEX index_name ON table_name |
single-column index بر پایه یک ستون از یک table ساخته شده است.
در زیر می توانید سینتکس آن را ببینید.
1 2 | CREATE INDEX index_name ON table_name (column_name) |
1 2 | CREATE INDEX singlecolumnindex ON customers (ID) |
از Unique indexes برای یکپارچه سازی داده ها استفاده می شود.
یک Unique indexes اجازه نمی دهد که مقادیر تکراری در table قرار گیرد.
در زیر می توانید سینتکس آن را ببینید.
1 2 | CREATE UNIQUE INDEX index_name on table_name (column_name) |
1 2 | CREATE UNIQUE INDEX uniqueindex on customers (NAME) |
یک composite index ایندکسی است که شامل دو یا چند ستون در table است.
در زیر می توانید سینتکس آن را ببینید.
1 | CREATE INDEX index_name on table_name (column1, column2) |
1 2 | CREATE INDEX compositeindex on customers (NAME, ID) |
یک ایندکس تک ستونی یا composite index ایجاد نمایید.
ستون ها را به عنوان WHERE clause و به عنوان شرایط فیلتر تعیین می نماییم.
باید از یک ستون استفاده نمایید و یک ستون را به عنوان single-column index استفاده نمایید.
اگر دو یا چند ستون وجود دارد که در فیلد WHERE اغلب مورد استفاده قرار می گیرد، composite index بهترین انتخاب است.
Indexes های نامتعارف Indexes هایی هستند که زمانی که یک object ایجاد می شود به طور خودکار توسط سرور پایگاه داده ایجاد می شوند.
Indexes به صورت خودکار برای ایجاد محدودیت های کلیدی و محدودیت های منحصر به فرد ساخته می شود.
یک Index را می توان با استفاده از دستور MS SQL SERVER DROP حذف کرد.
در استفاده از این دستور دقت کنید زیرا ممکن است این دستور موجب کند شدن عملکرد table شود.
در زیر می توانید سینتکس آن را ببینید.
1 | DROP INDEX tablename.index_name |
اگرچه index ها به این خاطر سخته شده اند که عملکرد پایگاه داده را بهبود بخشند اما گاهی بهتر است که از آن ها اجتناب نمود.
در موارد زیر بهتر است از index ها استفاده نمایید.
در این جلسه آموزش کار با Indexes در تی اس کیو ال را ارائه کردیم.
در جلسه بعدی کار با توابع را در تی اس کیو ال ارائه خواهیم کرد.
با پی وی لرن همراه باشید.