عبارت CREATE INDEX

از ویکی‌کد، دانشنامهٔ برنامه‌نویسی
پرش به ناوبری پرش به جستجو
Main Page Tutorial
Sql-menu.png
موارد آموزشی
بانک اطلاعاتی
۱عبارت CREATE DATABASE
۲عبارت DROP DATABASE
۳پشتیبان‌گیری بانک اطلاعاتی برای SQL Server
۴عبارت CREATE TABLE
۵عبارت DROP TABLE
۶عبارت ALTER TABLE
۷محدودیت‌ها
۸محدودیت NOT NULL
۹محدودیت UNIQUE
۱۰محدودیت PRIMARY KEY
۱۱محدودیت FOREIGN KEY
۱۲محدودیت CHECK
۱۳محدودیت DEFAULT
۱۴عبارت CREATE INDEX
۱۵فیلد افزایش خودکار
۱۶کار با تاریخ‌ها
۱۷Viewها
۱۸تزریق
۱۹میزبانی
مرجع
مثال‌ها

عبارت CREATE INDEX در SQL

عبارت CREATE INDEX برای ایجاد شاخص‌ها (اندیس‌ها) در جداول استفاده می‌شوند.[۱]

شاخص‌ها برای بازیابی سریعتر داده از بانک اطلاعاتی به کار می‌روند. کاربران نمی‌توانند شاخص‌ها را ببینند، آنها فقط برای سرعت بخشید به پرس‌وجوها / جستجوها استفاده می‌شوند.

توجه: بروزرسانی جدول داری شاخص از بروزرسانی جدول بدون شاخص زمان‌برتر است (زیرا شاخص‌ها نیز باید بروزرسانی شوند). بنابراین، تنها برروی ستون‌های شاخص تعریف می‌شود که دائماً برروی آنها جستجو انجام می‌شود.

نحو CREATE INDEX

یک شاخص برروی جدول ایجاد می‌کند. مقدارهای تکراری مجاز هستند:

1 CREATE INDEX index_name
2 ON table_name (column1, column2, ...);

نحو CREATE UNIQUE INDEX

یک شاخص یکتا برروی جدول ایجاد می‌کند. مقدارهای تکراری مجاز نیستند:

1 CREATE UNIQUE INDEX index_name
2 ON table_name (column1, column2, ...);


توجه: نحو ایجاد شاخص‌ها در بانک اطلاعاتی‌های مختلف متفاوت است؛ بنابراین: نحو ایجاد شاخص در بانک اطلاعاتی خود را بررسی کنید.

مثال CREATE INDEX

عبارت SQL زیر شاخصی به نام "idx_lastname" برروی ستون "LastName" در جدول "Persons" ایجاد می‌کند:

1 CREATE INDEX idx_lastname
2 ON Persons (LastName);

اگر می‌خواهید شاخصی برروی ترکیبی از ستون‌ها ایجاد کنید، می‌توانید نام ستون‌ها را بطوری که با کاما از هم جدا شده‌اند، داخل پرانتز لیست کنید:

1 CREATE INDEX idx_pname
2 ON Persons (LastName, FirstName);

عبارت DROP INDEX

عبارت DROP INDEX برای حذف اندیس در یک جدول استفاده می‌شود.

MS Access:
DROP INDEX index_name ON table_name;
SQL Server:
DROP INDEX table_name.index_name;
DB2/Oracle:
DROP INDEX index_name;
MySQL:
1 ALTER TABLE table_name
2 DROP INDEX index_name;



منابع آموزشی