ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭ । ব্যবহারিক । ডাটাবেস ম্যানেজমেন্ট সিস্টেম

আজকে আমাদের আলোচনার বিষয় – ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭ যা ব্যবহারিক এর ডাটাবেস ম্যানেজমেন্ট সিস্টেম এ অন্তর্ভুক্ত। এটি চার বছর মেয়াদি কোর্সের আলোকে লেখা হয়েছে। ডাটাবেস ম্যানেজমেন্ট সিস্টেমের বিভিন্ন ইংরেজি বই অনুসরণ করেই রচনা করা হয়েছে। ইঞ্জিনিয়ারিং বিষয়ের যে-কোন বই সম্পূর্ণরূপে বাংলা ভাষায় রচনা করা সম্ভব নয়। এজন্যে কিছু কিছু ইংরেজি শব্দকে বাংলায় অনুবাদ করা হয়নি। ফলে ছাত্রছাত্রীদের হয়ত কিছুটা অসুবিধা হতে পারে।

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

জব নং১৩ঃ Oracle ডাটাবেস ইনস্টলেশন এবং চালু করার ধাপসমূহ (Perform the task to install oracle database language and Invoking SQL plus)

জবের নাম: ওরাকল ইনস্টলেশন করার জন্য প্রয়োজনীয় হার্ডওয়ার ও অপারেটিং সিস্টেম। বর্ণনা (Description) & Oracle এর অনেকগুলো ভার্সনের মধ্যে Oracle 9i এর installation নিয়ে এখানে আলোচনা করা হল। Oracle 91 ইনস্টলেশন-এর পূর্বে প্রয়োজনীয় রিকোয়ারমেন্ট।

হার্ডওয়্যার রিকোয়ারমেন্ট:

রিকোয়ারমেন্ট মিনিমাম ভ্যালু
ফিজিক্যাল মেমরি (র‍্যাম)
১২৮ মেগাবাইট (মিনিমাম), ৫১২ মেগাবাইট (রিকোমেন্ডেড)
ভার্চুয়াল মেমরি
৫১২ মেগাবাইট (মিনিমাম), ১০২৪ মেগাবাইট (রিকোমেন্ডেড)
টেম্পরারি ডিস্ক স্পেস ১০০ মেগাবাইট
হার্ড ডিস্ক স্পেস ১.৫ গিগাবাইট
ভিডিও অ্যাডাপ্টার ২৫৬ কালার
প্রসেসর
২০০ মেগাহার্টজ মিনিমাম

ডিস্ক স্পেস : পারসোনাল Oracle 9i ইনস্টলেশনে ২.৫ গিগাবাইট স্পেস, সিস্টেম ড্রাইভে ১৪০ মেগাবাইট স্পেস-সহ ওরাকল ডকুমেন্টেশন এর জন্য আলাদা ৬০০ মেগাবাইট স্পেস দরকার। ওরাকল ডেভেলপার 6i ইনস্টলেশনে অতিরিক্ত আরো ১.১ গিগাবাইট স্পেস প্রয়োজন।

সফটওয়্যার রিকোয়ারমেন্ট:

রিকোয়ারমেন্ট ভ্যালু
অপারেটিং সিস্টেম

নিম্নলিখিত অপারেটিং সিস্টেম সার্পোট করে:

উইন্ডোজ এনটি সার্ভার ৪.০, উইন্ডোজ এনটি সার্ভার এন্টারপ্রাইজ এডিশন ৪.০, সার্ভিস প্যাক ৬এ-সহ টার্মিনাল সার্ভার এডিশন অথবা এর উচ্চতর ভার্সন। উইন্ডোজ ওয়ার্কস্টেশন সার্পোট করে না।

উইন্ডোজ ২০০০ এর সার্ভিস প্যাক ১ অথবা এর উচ্চতর ভার্সন। টার্মিনাল সার্ভিসেস এবং উইন্ডোজ ২০০০ মাল্টিল্যাংগুয়েজ এডিশন।

উইন্ডোজ সার্ভার ২০০৩

উইন্ডোজ এক্সপি প্রফেশনাল।

কম্পাইলার

ওরাকল সি++ কল ইন্টারফেস এ নিম্নলিখিত কম্পাইলার সাপোর্ট করেঃ-Visual C++ 6.0, Visual C++ Dot Net 2002, এবং Visual C++ Dot Net 2003

টেনওয়ার্ক প্রটোকল TCP/IP SSL-সহ TCP/IP

জবের নাম : CD ROM Drive এ CD প্রবেশ করানো, রিকোয়ারমেন্ট অনুযায়ী ওরাকল এর ইনস্টলেশন প্রসেসের ধাপসমূহ।

বর্ণনা (Description) :

Oracle 9i ইনস্টলেশন শুরুঃ প্রথমে উইন্ডোজ অপারেটিং সিস্টেম রান করতে হবে। উইন্ডোজ এনটি সার্ভার/উইন্ডোজ ২০০০/উইন্ডোজ এক্সপি সার্ভারে লগ অন করতে হবে। ওরাকল ইনস্টলেশন এর সময় অন্য সকল টাঙ্ক বন্ধ রাখতে হবে। প্রথমে সিডি ড্রাইভে Oracle 9i এর ইনস্টলেশন। নং সিডি প্রবেশ করাতে হবে। স্বয়ংক্রিয়ভাবে SETUP.EXE চলতে থাকে।

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

 

এখানে অপশন হচ্ছে-

(1) Installed Product.

(2) Deinstall Products.

(3) About Oracle Universal Installer.

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

এবার Installed products এ ক্লিক করতে হবে। এ অবস্থায় ওরাকলের সোর্স ফাইল এবং ডেস্টিনেশন ফাইলের পাথ চাইবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

সোর্স ফাইল এবং ডেস্টিনেশন ফাইলের পাথ ঠিকমতো দেয়ার পর NEXT বাটনে ক্লিক করতে হবে। এজন্য প্রয়োজনে Browse অপশনে গিয়ে পাথ ঠিকমতো দিয়ে দিতে হবে। তারপর NEXT বাটনে ক্লিক করতে হবে। Available Product এর কিছু অপশন আসবে। এখানে Oracle 9i database 9.2.0.1.0 অপশনটিতে ক্লিক করতে হবে।

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

এরপর NEXT বাটনে ক্লিক করলে Instrallation Types এর Enterprise Edition (2.86GB) অপশনে ক্লিক করতে হবে (প্রয়োজনে তা পরিবর্তন করা যেতে পারে)।

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

এরপর NEXT NEXT NEXT Install NEXT বাটনে ক্লিক করে যেতে হবে। সর্বশেষে ইনস্টলেশ সম্পন্ন হওয়ার পর Instrallation successfull বার্তা আসবে।

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

জবের নামঃ SQL*Pulse কে ওপেন করার ধাপসমূহ।

জবের নাম (Description) :

SQL*Pulse কে চালু করার জন্য নিম্নবর্তী ধাপসমূহ অনুসরণ করতে হবে।

  • স্বাভাবিকভাবে ওপারেটিং সিস্টেম XP চালু করি।
  • Sart বাটনে ক্লিক করে All Programs, অতঃপর Oracle-oracle গিয়ে Application Development অপশনে ক্লিক করে SQL*Pluse Select করতে হবে
  • SQL*Pluse Select করার ফলে একটি লগ-ইন এবং পাসওয়ার্ড বক্স আসবে। নিচে তা লক্ষণীয়-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

এরপর User Name এবং password টাইপ করে OK তে ক্লিক করলে মেইন উইন্ডো চালু হবে, যেখান থেকে কোড লেখা শুর করা যেতে পারে। নিচে তা দেখানো হল-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

জব নং১৪ঃ টেবিল ‘DUAL’ এবং SYSDATE এ কাজ করা (Perform the task to compute on table Data including DUAL’ and SYSDATE.)

বর্ণনা (Description) :

অপারেটরের প্রকারভেদ (Types of Operator): অপারেটর হচ্ছে এক ধরনের চিহ্ন, যা একাধিক ভ্যালুর উপর প্রয়োগ করে সিঙ্গেল আউটপুট তৈরি করা হয়। ডেটা বা ভ্যালু কোন অ্যাকশন সম্পাদন করবে তা অপারেটর দ্বারা নির্ধারণ করা হয়। SQL স্টেটমেন্টের সাথে যে সকল অপারেটর ব্যবহার করা হয় তা নিম্নরূপ-

  • Arithmetic অপারেটর
  • Logical অপারেটর
  • Like অপারেটর
  • Comparison অপারেটর
  • Set অপারেটর

Arithmetic অপারেটরঃ

 

অপারেটর কার্যক্রম
+
দু’টি রাশির যোগফল নির্ণয় করে
দু’টি রাশির বিয়োগফল নির্ণয় করে
*
দু’টি রাশির গুণফল নির্ণয় করে
** ঘাত নির্ণায়ক
/
দু’টি রাশির ভাগফল নির্ণয় করে
()
Enclosed Operation এর জন্য

 

কার্যপদ্ধতি (Working procedure): Arithmetic অপারেটর এর অন্তর্ভুক্ত বিভিন্ন অপারেটরের উদাহরণ নিম্নে দেয়া হলঃ Example-1 ঃ ধরি, emp টেবিলে Salesman-দের বেতন এবং কমিশন নির্বাচন করার জন্য “+” অপারেটরটির ব্যবহার করা হয়। এজন্য নিম্নরূপ কমান্ড প্রয়োগ করে ফলাফল লক্ষ করতে হবে-

আমরা অপারেটরের কমান্ড প্রয়োগ করার আগে দেখতে হবে emp টেবিলের পূর্বের অবস্থা কেমন ছিল।

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

লক্ষ করতে হবে: “+” অপারেটর ব্যবহার করে দু’টি নতুন কলামকে যুক্ত করতে হবে।

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

 

Example-2 : ধরা যাক, ‘Manager”দের বেতন ২০% বাড়াতে হবে। এজন্য “+” ও “*” অপারেটর ব্যবহার করতে হবে। এজন্য নিম্নরূপ কমান্ড প্রয়োগ করে ফলাফল লক্ষ করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

 

Example-3 8 Product_master টেবিলের sell_price এর 5% এবং 105% নির্ণয়ের ক্ষেত্রে অপারেটর “*” ব্যবহার করতে হবে। নিম্নরূপ কমান্ড প্রয়োগ করে ফলাফল লক্ষ করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

জব নং১৫ঃ Oracle এর বিভিন্ন প্রকার Constraints তৈরি করা (Perform the task to work with Oracle function and different types of constrain)

কর্ণনা (Description) : Sales_order_details নামে নিম্নরূপ একটি টেবিল তৈরি করতে হবে যাতে বিভিন্ন প্রকার Constraint থাকবে।

টেবিল স্ট্রাকচার: Sales_order_details

Columnname Data Type Size Attributes
delorder_no Varchar2 6
Primary key, Foreign key, references of order_no of sales_order tabe.
product_no Varchar2 6
Primary key, Foreign key, references of product no of product master tabe.
qty_ordered Number 6
qty_disp Number 6
cannot be greater than qtp_ordered
product_rate Number 6.2 not_null

Example : নিচের কমান্ড প্রয়োগ করে ফলাফল লক্ষ করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

জব নং১৬ঃ সাব-কুয়েরী নিয়ে কাজ করা (Perform the table to work with sub-queries.) :

বর্ণনা (Description):

সাব-কুয়েরী কীঃ সাব-কুয়েরি হচ্ছে একটি পূর্ণাঙ্গ SQL স্টেটমেন্ট, যা অপর একটি SQL স্টেটমেন্ট-এর ভিতরে অবস্থান করে। অর্থাৎ কোন SQL স্টেটমেন্টের মধ্যে অন্য আরও কোন SQL স্টেটমেন্ট ব্যবহৃত হলে তাকে সাব-কুয়েরী বলে। একে Nested কুয়েরীও বলা হয়। যে স্টেটমেন্টের মধ্যে সাব-কুয়েরী স্টেটমেন্ট থাকে, তাকে Parent স্টেটমেন্ট বলে এবং সাব- কুয়েরীটিকে Child কুয়েরীও বলা হয়। সাব-কুয়েরীতে Child কুয়েরীর ফলাফল সরাসরি প্রকাশিত হয় না।
সাব-কুয়েরি সাধারণত নিম্নোক্ত কাজে ব্যবহৃত হয়ঃ

  • টাগের্ট টেবিলে রেকর্ড ইনপুট করতে,
  • টাগের্ট টেবিলে রেকর্ড আপডেট করতে,
  • View তৈরি করতে,
  • SELECT, UPDATE, এবং DELETE স্টেটমেন্টের সাথে ব্যবহৃত WHERE, HAVING IN ক্লোজ দ্বারা শর্ত নির্ধারণ করার জন্য ভ্যালু সরবরাহ করতে।

Example-1 : ধরি, sales_order টেবিল থেকে A. Hossain নামের client এর সকল order কে Retrieve করতে হবে। এজন্য নিচের পদক্ষেপগুলো অনুসরণ করতে হবে-

(a) প্রথমেই টেবিল দু’টি দেখে নিতে হবে- টেবিলের নাম: sales_order:

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

 

টেবিলের নাম: Client_Master:

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

(b) sales_order টেবিলে Client_no কলাম ধারণ করে কিন্তু Client-দের নাম ধারণ করে না। client_master টেবিলে client-দের নাম ও Client_no দু’টি কলামই ধারণ করে। Client_no কলামটি sales_order এবং client master উভয় টেবিলে আছে, কেননা Client_no কলামটি দু’টি টেবিলেরই একটি Unique কলাম। এখন এই দু’টি টেবিলের সমন্বয়ে A. Hossain নামের client এর Order No, Client No এবং Order_date সাব-কুয়েরীর মাধ্যমে নিচে কমান্ড প্রয়োগের মাধ্যমে ফলাফল লক্ষ্য করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

 

Example-2 : এখন sales_order_details টেবিলে যে সমস্ত Product বিক্রি হয় নি সে সমস্ত Product-গুলোকে Product_master থেকে আলাদা করার জন্য সাব-কুয়েরী ব্যবহার করে ফলাফল লক্ষ্য করতে হবে।
(a) প্রথমেই টেবিল দু’টি লক্ষ্য করি-

টেবিলের নাম: sales_order_details

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

টেবিলের নামঃ Product_master

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

(b) এবার সাব-কুয়েরী ব্যবহার করে কমান্ড প্রয়োগের মাধ্যমে ফলাফল লক্ষ করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

Example-3 : Employees এবং ACR নামক দুটি টেবিলের মাধ্যমে department এর inventory মেইনটেইন করা হয়। এ দু’টি টেবিলের মাধ্যমে কর্মচারীদের personal ইনফরমেশনও জানা। কেননা ACR নামক টেবিলে প্রতি বছর বছর কর্মকর্তা-কর্মচারীদের Performance এন্ট্রি করা হয়। এ দুই টেবিল থেকে এখন সাব-কুয়েরী ব্যবহার করে বিভিন্ন ইনফরমেশন জানা যেতে পারে।

(a) প্রথমেই টেবিল দু’টি দেখে নিতে হবে-

টেবিলের নামঃ Employees

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

টেবিলের নাম: ACR

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

(b) টেবিল দু’টি থেকে সাব-কুয়েরী ব্যবহার করে Surmin Sultana যে ডিপার্টমেন্টে আছে সেই ডিপার্টমেন্টে আর কে কে আছে তা বের করার জন্য কমান্ড প্রয়োগ করে ফলাফল লক্ষ্য করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

 

(c) আমাদেরকে Surmin Sultana নাম না লিখে বরং সবার নাম লিখে দিলে শুধুমাত্র ‘D01’ ডিপার্টমেন্টে কে কে আছে তা বের করার জন্য কমান্ড প্রয়োগ করে ফলাফল লক্ষ করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

জব নং১৭ঃ SQL এ index নিয়ে কাজ করা (Perform the task to work with indexes in SQL):

বর্ণনা (Description) :

ইনডেক্স (Index): যে কোন বইয়ে সূচিপত্র যে ভূমিকা পালন করে, ইনডেক্স ও ডেটাবেসে একই ভূমিকা পালন করে থাকে। ইনডেক্স এর ব্যবহার ডেটাবেস থেকে ডেটা অনুসন্ধানে দ্রুততা এনে দেয়। ডেটাবেসে প্রতিটি রেকর্ডের একটি আইডি নাম্বার থাকে। একে বলা হয় ‘রো’ আইডি। ওরাকল ডেটাবেস প্রতিটি রেকর্ডকে এই রো আইডি অনুসরণ করে খুঁজে বের করে। ইনডেক্স ডেটা টেবিলের রেকর্ডগুলোকে এই রো আইডি অনুসারে কোন বিশেষ অর্ডারে সাজিয়ে রাখে। ইনডেক্স করার পর ডেটাবেসে কোন আপডেট করা হলে ইনডেক্সগুলো ও আপনা-আপনি আপডেটেড বা হালনাগাদ হয়ে যায়।

ইনডেক্স কীভাবে কাজ করে: টেবিলে কোন ডেটা ইনপুট করা হলে ওরাকল ইঞ্জিন তার একটি ডেটা-ভ্যালুর ইনডেক্সে লিখে রাখে এবং ইনডেক্সে প্রত্যেক ডেটা ভ্যালুর জন্য ওরাকল এক একটি Rowid সন্নিবেশ করে। টেবিলে রেকর্ড কোথায় সংরক্ষিত আছে তাও Rowid নির্দেশ করে। এ Rowld ব্যবহার করেই ওরাকল টেবিল থেকে ডেটা খুঁজে বের করে। টেবিলকে যখন ইনডেক্স করা হয় তখন ওরাকল Rowid গুলোকে সাজিয়ে নেয়।

Rowid এর জন্য নিম্নোক্ত ফরমেট ব্যবহৃত হয়-

BBBBBBB.RRRR.FFF

এখানে,

  • FFFF : ইউজারের সকল ডেটা ওরাকল ডেটা ফাইলে সংরক্ষণ করে। প্রতিটি ডেটা ফাইল চিহ্নিত করার জন্য একটি ইউনিক সংখ্যা দিয়ে নির্ধারণ করা হয়।
  • BBBBBBB: ডেটা ফাইলে প্রতিটি ডেটা এক একটি ব্লক আকারে সংরক্ষিত হয়। এ ব্লককে চিহ্নিত করার জন্য প্রত্যেক ব্লকের জন্য আলাদা আলাদা নাম্বার দ্বারা নির্দিষ্ট করা হয়। ওরাকল ডেটা ব্লকের নাম্বার প্রদান করার জন্য BBBBBBB ফরমেট ব্যবহার করে।
  • RRRR : প্রত্যেক ডেটা ব্লকে এক বা একাধিক রেকর্ড থাকতে পারে। ডেটা ব্লকের অধীনে রেকর্ডগুলোকে চিহ্নিত করার জন্য ওরাকল RRRR ফরমেট ব্যবহার করে। নির্ধারিত নাম্বার হচ্ছে ০।

প্রত্যেক রেকর্ড ইনপুট করানোর পরে ওরাকল ডেটা ব্লকে Free space খোঁজ করে এবং যে ডেটা ব্লকে ফাঁকা জায়গা আছে সেখানে সংরক্ষণ করে। ওরাকল এভাবে প্রতিটি রেকর্ড সংরক্ষণ করার সময় Rowid দ্বারা ডেটার address নির্ধারণ করে রাখে। Example-1 : এবার কোন ডেটার Rowid দেখা যাক, client_master টেবিল থেকে Client_no এর Rowid দেখার জন্য নিম্নরূপ কমান্ড প্রয়োগ করে ফলাফল লক্ষ করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

ডুপ্লিকেট/ইউনিক ইনডেক্স (Duplicate/Unique Index): ওরাকলে নিম্নোক্ত দু’ধরনের ইনডেক্স তৈরি করা যায়-

  • ডুপ্লিকেট ইনডেক্সঃ ইনডেক্স কলামে ডুপ্লিকেট ভ্যালু থাকতে পারে।
  • ইউনিক ইনডেক্স: ইনডেক্স কলামে ডুপ্লিকেট ভ্যালু থাকতে পারে না।

Creation of Index (ইনডেক্স তৈরি করা): কতগুলো কলামের উপর একত্রে ইনডেক্স তৈরি করা হবে তার উপর ভিত্তি করে

ইনডেক্সকে দুই ভাগ করা যায়-

  • Simple Index: কেবলমাত্র একটি কলামের সমন্বয়ে ইনডেক্স করা হয়।
  • Composite Index : একাধিক কলামের উপর ইনডেক্স করা হয়।

Simple ইনডেক্স তৈরি করা (Creating Simple Index) : Simple ইনডেক্স তৈরি করার সিনট্যাক্স হলঃ

Example-2 : emp টেবিলে deptno কলামের উপর একটি simple ইনডেক্স তৈরি করতে হবে।

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

 

যে কোন কলামের উপর একবার ইনডেক্স তৈরি করা হলে ঐ একই কলামের উপর দ্বিতীয় কোন ইনডেক্স তৈরি করা যায় না। যদি উপরিউক্ত কমান্ডটিতে Index Name পরিবর্তন করে একই কলামের উপর আবার ইনডেক্স তৈরির চেষ্টা করা হয়, তবে এতে একটি Error message দেখাবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

 

Composite ইনডেক্স তৈরি করা (Creating Composite Index) : Composite ইনডেক্স তৈরি করার সিন্ট্যাক্স হলোঃ

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

Example-3 : dept টেবিলে dname এবং Loc কলাম দু’টির উপর একটি Composite ইনডেক্স তৈরি করতে হবে।

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

Linique ইনডেক্স তৈরি করা (Creation of Unique Index) & Unique ইনচেছেও এক বা একাধিক জলাম থাকতে পায়ে। Lleique ইনডেক্স একটি ভলাষের সমন্বয়ে তৈরি করা হলে থাকে Simple Unique ইনডেক্স বলে। Simple Unique ইনডেক্স তৈরি করায় সিন্ট্যাক্স হলো:

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

আবার একাধিক কলামের সমন্বয়ে কোন Unique ইনডেক্স তৈরি করা হলে তাকে Composit Unique ইনডেক্স বলে। Composit Unique ইনডেক্স তৈরি করার সিন্ট্যাক্স হলো:

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

Example-4 : emp টেবিলের ename কলামের উপর একটি Unique ইনডেক্স তৈরি করতে। এজন্য নিম্নরূপ কমান্ড প্রয়োগ করে ফলাফল লক্ষ করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

ইনডেক্স ভিউ করা। এ পর্যন্ত যে সমস্ত ইনডেক্স তৈরি করা হয়েছে তা দেখার জন্য কমান্ড প্রয়োগ করে ফলাফল লক্ষ করতে হবে-

 

ডাটাবেস ম্যানেজমেন্ট সিস্টেম ব্যাবহারিক জব নং ১৩ থেকে ১৭

আরও দেখুনঃ

Leave a Comment