1/23/2013

Oracle INDEXES

السلام عليكم

درس اليوم عن Oracle INDEXES 
يوجد نوعان من INDEXES :
الاول:
يتم بناءه بشكل اتوماتيكى عند انشاءك لـ PRIMARY KEY OR UNIQUE KEY داخل الجدول وهذا النوع المفضل عند اوركال
الثانى :
عند استخدامك لكل من CREATE INDEX OR CREATE TABLE
دعنا نتحدث اكتر عن النوع الثانى بمثال :
Code
CREATE TABLE NEW_EMP
(employee_id NUMBER(6)
PRIMARY KEY USING INDEX
(CREATE INDEX emp_id_idx ON
NEW_EMP(employee_id)),
first_name VARCHAR2(20),
last_name VARCHAR2(25));



ويمكنك الاستعلام عن اى INDEX قمت بأنشاءه من خلال التعديل على الكود التالى بما يناسب متطلباتك
Code
SELECT INDEX_NAME, TABLE_NAME
FROM USER_INDEXES
WHERE TABLE_NAME = 'NEW_EMP';

السؤال هو ؟
ما هى الفائده من استخدام الـ INDEX
اذا كان لديك جدول ملىء بلبيانات وانت تريد انت تسرع من عمليه الاستعلام على هذا الجدول اذن فـ انت تبحث عن الـ INDEX
فى المثال التالى نحن نتحدث عن جدول موجود بلفعل ونريد ان نضيف له INDEX
Code
CREATE TABLE NEW_EMP2
( employee_id NUMBER(6)
first_name VARCHAR2(20),
last_name VARCHAR2(25)
);
Code
CREATE INDEX emp_id_idx2 ON
new_emp2(employee_id);

Code
ALTER TABLE new_emp2 ADD PRIMARY KEY (employee_id) USING INDEX
emp_id_idx2;
ملحوظه :هذه هى الطريقه المفضله من اوركال عند بناء INDEX جديد وربطه بعمود معين داخل جدول


السلام عليكم
How to remove Oracle INDEX

كيف يمكنك حذف Oracle Index 
يمكنك حذف الـ index من الـ data dictionary  باستخدام الامر التالى ولا يمكنك حذف الـ index الا اذا كنت انت المالك له او لديك صلاحيات Drop any index privilege

Code
 DROP INDEX index_name;

No comments:

Post a Comment