SQL (এসকিউএল) CREATE INDEX স্টেটমেন্ট

SQL (এসকিউএল) CREATE INDEX স্টেটমেন্ট
Article By : Protap Chandra

ইনডেক্স শব্দের অর্থ হলো সূচিকরণ। সহজে ও কম সময়ে ডাটা খুঁজে বের করার জন্য ডাটাকে একটি বিশেষ অর্ডারে সাজিয়ে রাখাকে ইনডেক্সিং বলে। টেবিলের ডাটাকে ইনডেক্সিং করতে CREATE INDEX স্টেটমেন্ট ব্যবহার করা হয়। ইনডেক্স করা থাকলে খুব সহজে ডাটা খুঁজে বের করা যায়। ডাটা নির্বাচন করতে ডাটাবেজ অ্যাপ্লিকেশনকে পুরো টেবিল পড়তে হয় না। তবে ডাটাবেজ ব্যবহারকারীরা কিন্তু ইনডেক্স অংশটি দেখতে পায় না।

যে টেবিলে ইনডেক্স করা থাকে সেই টেবিল আপডেট করতে তুলনামূলক বেশি সময় লাগে। কারণ বিদ্যমান ইনডেক্সিংয়েরও আপডেট প্রয়োজন হয়। একারণে, কেবল সেইসব টেবিল এবং কলামে ইনডেক্স করা উচিত যেগুলো হরহামেশা সার্চ করার প্রয়োজন হয়।

এসকিউএল CREATE INDEX স্টেটমেন্ট এর গঠনরীতি:
নিচের স্টেটমেন্টটি একটি টেবিলে ইনডেক্স তৈরী করবে। এটির ক্ষেত্রে duplicate (নকল) ভ্যালুও তৈরী হতে পারে।

CREATE INDEX index_name
ON table_name (column_name)

এসকিউএল CREATE UNIQUE INDEX স্টেটমেন্ট এর গঠনরীতি:
নিচের স্টেটমেন্টটি একটি টেবিলে অনন্য (unique) ইনডেক্স তৈরী করবে। এখানে duplicate ভ্যালু তৈরী হবে না।

CREATE UNIQUE INDEX index_name
ON table_name (column_name)

আরো উল্লেখ করা প্রয়োজন যে, আলাদা আলাদা ডাটাবেজে indexe করার গঠনরীতি বা syntax আলাদা হতে পারে। তাই যে ডাটাবেজ নিয়ে কাজ করছেন সেই ডাটাবেজের ইনডেক্স গঠনরীতি ভালো করে জেনে নিতে হবে।

CREATE INDEX এর উদাহরণ:

ইনডেক্স তৈরী করার সময় ইনডেক্সের একটা নাম দিতে হয়। নিচের SQL স্টেটমেন্টটি "Persons" টেবিলের "LastName" কলামে একটি ইনডেক্স তৈরী করবে, যার নাম হবে "PIndex".

CREATE INDEX PIndex
ON Persons (LastName)

একাধিক কলামের উপরেও ইনডেক্স তৈরী করা যায়। সেক্ষেত্রে কলামগুলোর নাম বন্ধনীর ভেতর কমা দিয়ে আলাদা করে লিখতে হবে। যেমন:

CREATE INDEX PIndex
ON Persons (LastName, FirstName)

Permanent link to this article: http://bangla.sitestree.com/sql-%e0%a6%8f%e0%a6%b8%e0%a6%95%e0%a6%bf%e0%a6%89%e0%a6%8f%e0%a6%b2-create-index-%e0%a6%b8%e0%a7%8d%e0%a6%9f%e0%a7%87%e0%a6%9f%e0%a6%ae%e0%a7%87%e0%a6%a8%e0%a7%8d%e0%a6%9f/

Leave a Reply