ایس کیو ایل یا سکیما میں تمام انڈیکس کیسے دکھائے جائیں۔

How Show All Indexes Mysql



مائی ایس کیو ایل ڈیٹا بیس انڈیکس سے مراد ایک قسم کا ڈیٹا ڈھانچہ ہے جو ڈیٹا بیس میں ڈیٹا آرگنائزیشن کے طور پر استعمال ہوتا ہے اور ایس کیو ایل میں کئے گئے مختلف آپریشنز کی رفتار کو آگے بڑھانے میں مدد کرتا ہے۔

انڈیکس بہت مددگار ہیں۔ ان کے بغیر ، MySQL کو متعلقہ قطاروں اور کالموں کو تلاش کرنے کے لیے پوری میز کو اسکین کرنا پڑتا ہے ، جو بڑے ڈیٹا بیس میں بہت ناکارہ ہو سکتے ہیں۔







یہ ٹیوٹوریل اس بات پر توجہ مرکوز کرے گا کہ MySQL میں SHOW INDEXES شق کا استعمال کرکے انڈیکس کی معلومات کو کیسے دیکھا جائے۔



ٹیبل انڈیکس دکھائیں۔

ٹیبل پر انڈیکس کی معلومات دکھانے کے لیے ، ہم شو انڈیکس شق استعمال کرتے ہیں جس کے بعد ٹیبل کا نام ہم انڈیکس کی معلومات حاصل کرنا چاہتے ہیں۔



عام نحو اس طرح دکھایا گیا ہے:





انڈیکس دکھائیں tbl_name

مثال کے طور پر ، سکیلا نمونہ ڈیٹا بیس میں سے ایک جدول پر غور کریں۔ ہم انڈیکس کی معلومات حاصل کر سکتے ہیں جیسا کہ ذیل کے سوال میں دکھایا گیا ہے:

استعمال سکیلا

فلم سے انڈیکس دکھائیں

مندرجہ بالا استفسار فلم ٹیبل سے انڈیکس کی معلومات سکیلا ڈیٹا بیس میں دکھائے گا۔ پیداوار یہ ہے:



انڈیکس کی معلومات کو سمجھنا۔

SHOW INDEXES کمانڈ مخصوص ٹیبل میں انڈیکس کے بارے میں متعلقہ معلومات دکھاتا ہے۔

یہاں درج ذیل شرائط اور ان کی متعلقہ معلومات فراہم کی گئی ہیں۔

  1. ٹیبل: یہ آؤٹ پٹ کا پہلا کالم ہے۔ یہ ٹیبل کا نام دکھاتا ہے جہاں انڈیکس رہتا ہے۔
  2. غیر منفرد: دوسرا کالم ظاہر کرتا ہے کہ انڈیکس میں ڈپلیکیٹ ہو سکتا ہے۔ قیمت ایک بولین ہے ، جس میں 1 اشارہ کرتا ہے کہ انڈیکس میں ڈپلیکیٹس اور 0 اگر دوسری صورت میں ہو سکتا ہے۔
  3. کلیدی نام: تیسرا کالم انڈیکس کا نام دکھاتا ہے۔ کنونشن کے مطابق ، بنیادی کلید پرائمری کا انڈیکس نام لیتی ہے۔
  4. سیک_ ان_ انڈیکس: چوتھا کالم انڈیکس میں کالم تسلسل نمبر 1 کی قیمت سے شروع ہوتا ہے۔
  5. کالم کا نام: پانچواں کالم صرف کالم کا نام ہے۔
  6. کولیشن: چھٹا کالم ایک سیکشن ہے جو ظاہر کرتا ہے کہ کالم انڈیکس میں کیسے ترتیب دیا جاتا ہے۔ چھانٹنے کی تین اقدار ہیں ، A بڑھتے ہوئے آرڈر کے ساتھ ، B نزول آرڈر کی نشاندہی کرتا ہے ، اور NULL غیر ترتیب شدہ ہے۔
  7. کارڈنلٹی: ساتواں کالم ڈیٹا ویلیو کی انفرادیت کو ظاہر کرتا ہے۔ انڈیکس میں ، یہ مخصوص انڈیکس میں منفرد اقدار کی تخمینہ شدہ تعداد کو ظاہر کرتا ہے۔
  8. ذیلی حصہ: آٹھویں کالم NULL کے ساتھ انڈیکس کا سابقہ ​​دکھاتا ہے ، جس سے ظاہر ہوتا ہے کہ پورا کالم انڈیکس ہے۔
  9. بھری ہوئی: نویں کالم سے پتہ چلتا ہے کہ انڈیکس کیز کو کس طرح پیک کیا جاتا ہے ، NULL سے یہ ظاہر ہوتا ہے کہ چابیاں پیک نہیں ہیں۔
  10. خالی: دسواں کالم بتاتا ہے کہ کالم میں NULL اقدار ہو سکتی ہیں۔ ہاں ، اگر کالم کالعدم اقدار پر مشتمل ہو ، اور اگر نہیں تو خالی۔
  11. Index_type: گیارہواں کالم انڈیکس کا طریقہ دکھاتا ہے جیسے BTREE ، HASH ، RTREE ، اور FULLTEXT۔
  12. تبصرہ: بارہواں کالم انڈیکس کے بارے میں معلومات دکھاتا ہے جو اس کے کالم میں بیان نہیں کیا گیا ہے۔
  13. اشاریہ_ تبصرہ: تیرہواں کالم انڈیکس کے بارے میں اضافی معلومات دکھاتا ہے جو کہ COMMENT وصف کو استعمال کرتے ہوئے بنایا گیا ہے۔
  14. مرئی: چودھویں کالم سوال کی اصلاح کے لیے نظر آنے والا انڈیکس ہے ، جس میں ہاں اور نہیں کی اقدار ہیں۔
  15. اظہار: پندرہواں کالم دکھاتا ہے اگر انڈیکس ایکسپریشن استعمال کرتا ہے نہ کہ کالم یا کالم کا سابقہ ​​ویلیو۔

اشارہ: SHOW INDEXES استفسار سے انڈیکس کے بارے میں معلومات SQLStatistics کی طرح ہے۔

سکیما انڈیکس دکھائیں۔

آپ اسکیما کے بارے میں انڈیکس کی معلومات بھی حاصل کرسکتے ہیں۔ اس نتیجہ کو حاصل کرنے کے لیے عمومی نحو مندرجہ ذیل ہے:

ٹیبل_نام ، انڈیکس_نام کو انفارمیشن_ سکیما سے منتخب کریں۔ سٹیٹس جہاں ٹیبل_ سکیما = اسکیما_ نام

ذیل کے سوال پر غور کریں جو سکیلا اسکیما کے بارے میں معلومات دکھاتا ہے۔

ٹیبل کا نام ، انڈیکس کا نام معلومات_ سکیما سے حاصل کریں۔ اعدادوشمار جہاں ٹیبل_ اسکیما ='سکیلا'؛

یہ سکیلا سکیما میں انڈیکس کے بارے میں معلومات ظاہر کرے گا جیسا کہ ذیل میں آؤٹ پٹ میں دکھایا گیا ہے۔

+ --------------- + -----------------------------

|ٹیبل_NAME۔|INDEX_NAME۔|

+ --------------- + -----------------------------

|اداکار|پرائمری|

|اداکار|idx_actor_last_name|

|پتہ|پرائمری|

|پتہ|idx_fk_city_id|

|پتہ|idx_location|

|قسم|پرائمری|

|شہر|پرائمری|

|شہر|idx_fk_country_id|

|ملک|پرائمری|

|صارف|پرائمری|

|صارف|idx_fk_store_id|

|صارف|idx_fk_address_id|

|صارف|idx_last_name|

|فلم|پرائمری|

|فلم|idx_title|

|فلم|idx_fk_language_id|

|فلم|idx_fk_original_language_id|

|فلم_ اداکار|پرائمری|

|فلم_ اداکار|پرائمری|

|فلم_ اداکار|idx_fk_film_id|

|فلم_ زمرہ|پرائمری|

|فلم_ زمرہ|پرائمری|

|فلم_ زمرہ|fk_film_category_category|

|فلمی متن|پرائمری|

|فلمی متن|idx_title_description|

|فلمی متن|idx_title_description|

|انوینٹری|پرائمری|

|انوینٹری|idx_fk_film_id|

|انوینٹری|idx_store_id_film_id|

|انوینٹری|idx_store_id_film_id|

|----------------------------- آؤٹ پٹ منقطع ------------------- -------

آپ ذیل میں دکھائے گئے استفسار کا استعمال کرتے ہوئے سرور کے تمام سکیموں سے بھی معلومات حاصل کرسکتے ہیں۔

ٹیبل_نام ، انڈیکس_نام معلومات_ اسکیما سٹیٹسٹکس سے منتخب کریں۔

نوٹ : مندرجہ بالا استفسار بہت ساری معلومات کو پھینک دیتا ہے۔ شاذ و نادر ہی آپ کو تمام اسکیموں سے انڈیکس حاصل کرنے کی ضرورت ہوگی۔ تاہم ، ایک نمونہ پیداوار ذیل میں ہے:

+ -------------------- + ------------ +۔

|ٹیبل_NAME۔|INDEX_NAME۔|

+ -------------------- + ------------ +۔

|innodb_table_stats۔|پرائمری|

|innodb_table_stats۔|پرائمری|

|innodb_index_stats|پرائمری|

|innodb_index_stats|پرائمری|

|innodb_index_stats|پرائمری|

+ -------------------- + ------------ +۔

نتیجہ

اس ٹیوٹوریل میں ، ہم نے ٹیبل میں انڈیکس کے بارے میں معلومات حاصل کرنے کے لیے MySQL SHOW INDEXES استفسار کو استعمال کرنے کے طریقے پر تبادلہ خیال کیا۔ ہم نے ایک ایس کیو ایل سرور میں ایک یا تمام اسکیموں سے انڈیکس کے بارے میں معلومات حاصل کرنے کے لیے انفارمیشن_ سکیما کا استعمال کرتے ہوئے بھی دیکھا۔