আজকে আমাদের আলোচনার বিষয় – ডাটাবেস ভাষা সম্বন্ধের সূচনা যা অধ্যায়-২ এর ডাটাবেস ম্যানেজমেন্ট সিস্টেম এ অন্তর্ভুক্ত। এটি চার বছর মেয়াদি কোর্সের আলোকে লেখা হয়েছে। ডাটাবেস ম্যানেজমেন্ট সিস্টেমের বিভিন্ন ইংরেজি বই অনুসরণ করেই রচনা করা হয়েছে। ইঞ্জিনিয়ারিং বিষয়ের যে-কোন বই সম্পূর্ণরূপে বাংলা ভাষায় রচনা করা সম্ভব নয়। এজন্যে কিছু কিছু ইংরেজি শব্দকে বাংলায় অনুবাদ করা হয়নি। ফলে ছাত্রছাত্রীদের হয়ত কিছুটা অসুবিধা হতে পারে।
ডাটাবেস ভাষা সম্বন্ধের সূচনা
সূচনা
বিভিন্ন প্রোগ্রামিং ল্যাংগুয়েজ (Programming language) সম্পর্কে আমাদের সকলেরই কমবেশি ধারণা আছে। কম্পিউটারের সাহায্যে বিভিন্ন সমস্যা সমাধানের উদ্দেশ্যে যে ল্যাংগুয়েজের সাহায্যে আমরা প্রোগ্রাম রচনা করতে পারি, তাকেই প্রোগ্রামি ল্যাংগুয়েজ বলে। এত গেল সাধারণ প্রোগ্রামিং ল্যাংগুয়েজের কথা, কিন্তু আর একটি বিশেষ ধরনের ল্যাংগুয়েজ প্রচলিত আছে, আর তা হল ডাটাবেস ল্যাংগুয়েজ। বর্তমান বিশ্বে এ ডাটাবেস ল্যাংগুয়েজের চাহিদা সবচেয়ে বেশি।
এ ল্যাংগুয়েজটি ডাটাবেস প্যাকের প্রোগ্রামের মধ্যে ইমবেডেড (Embedded) অবস্থায় থাকে। যেমন- ওরাকল (Oracle), ফক্সপ্রো (Foxpro), এম এস অ্যাক্সেস (MS Access) ইত্যাদি সবগুলো প্যাকেজ প্রোগ্রামের মধ্যেই এটি অন্তর্ভুক্ত রয়েছে। প্রধানত এ ডাটাবেস ল্যাংগুয়েজ দুই ধরনের হয়ে থাকে, যেমন-ডাটা ডেফিনিশন ল্যাংগুয়েজ বা ডিডিএল (Data definition language or DDL) এবং ডাটা ম্যানিপুলেশন ল্যাংগুয়েজ অথবা ডি এম এল (Data manipulation language or DML)।
আজকাল যে কোন প্রোগ্রাম উন্নয়ন (Development) করতে চাইলেই এ ডাটাবেস ল্যাংগুয়েজ ব্যবহার করতে হয়। অতএব বলা যায় যে, এ ডাটাবেস ল্যাংগুয়েজ ব্যতীত প্রোগ্রামারবৃন্দ অচল।
ডাটাবেস ম্যানেজমেন্ট সিস্টেম আধুনিক যুগের সবচেয়ে প্রয়োজনীয় সফটওয়্যার সিস্টেম। অতএব, এর ব্যবহার ও ব্যাপক। যে সমস্ত ব্যক্তি ডাটাবেস ব্যবহার করে থাকে, তাদেরকে বলা হয় ডাটাবেস ব্যবহারকারী (Database user) বা ডাটাবেস ইউজার। বিভিন্ন শ্রেণীর ডাটাবেস ইউজার রয়েছে। এদের সম্পর্কে সম্যক জ্ঞান থাকা দরকার। ডাটাবেস ম্যানেজার (Database manager) হল ডাটাবেস ম্যানেজমেন্ট সিস্টেমের একটি প্রোগ্রাম (Program)।
DBMS-এ এ প্রোগ্রামের দায়িত্ব অনেক। বলতে গেলে এটি DBMS- এর গুরুদায়িত্ব পালন করে থাকে। অপরপক্ষে ডাটাবেস অ্যাডমিনিস্ট্রেটর (Database administrator) হল একজন ব্যক্তি, যিনি ডাটাবেসের স্কীমা ডিজাইন করে থাকেন। এ দিক থেকে চিন্তা করলে ডাটাবেস অ্যাডমিনিস্ট্রেটরকে ডাটাবেস ডিজাইনারও বলা চলে।
অবশ্য DBMS-এ এ অ্যাডমিনিস্ট্রেটরের ঐ সমস্ত কাজ ছাড়াও অনেক গুরুত্বপূর্ণ কাজ রয়েছে। যা হোক, ডাটাবেস ম্যানেজমেন্ট সিস্টেম নামক এ বইয়ের চতুর্থ অধ্যায়ে ডাটাবেস ইউজার (Database user), ডাটাবেস ম্যানেজার (Database manager) ও ডাটাবেস অ্যাডমিনিস্ট্রেটর (Database administrator) সম্পর্কে বিশদভাবে আলোচনা করা হয়েছে।
তাদের সম্পর্কে বাস্তবভিত্তিক জ্ঞান লাভের জন্যে ছাত্রছাত্রীদেরকে এ অধ্যায়টি ভালভাবে অধ্যয়ন করতে হবে। কারণ ডাটাবেস ইউজার, ডাটাবেস ম্যানেজার ও ডাটাবেস অ্যাডমিনিস্ট্রেটর সম্পর্কে জানা না থাকলে DBMS সম্পর্কে সম্যক জ্ঞান লাভ করা সম্ভব নয়।
ডাটাবেস ল্যাংগুয়েজের সংজ্ঞা
ডাটাবেস ল্যাংগুয়েজ: যে ল্যাংগুয়েজের সাহায্যে ডাটাবেস সিস্টেমে স্কীমা ডেফিনিশন, কুয়েরি অপারেশন, ডাটা মডিফিকেশন ইত্যাদি কাজ করা হয়, সে সব ল্যাংগুয়েজকে ডাটাবেস ল্যাংগুয়েজ বলে।
ডাটাবেস ল্যাংগুয়েজ হিসেবে ২ ধরনের ল্যাংগুয়েজ রয়েছে, যেমন-
১। Data Definition Language (DDL) এবং
২। Data Manipulation Language(DML)
DDL এবং DML দু’টি আলাদা কোন ল্যাংগুয়েজ নয়। এরা ডাটাবেস ল্যাংগুয়েজের একেকটি অংশ মাত্র।
১. Data Definition Language (DDL): যে ডাটাবেস ল্যাংগুয়েজ এর মাধ্যমে রিলেশনাল ডাটাবেস স্কীমাগুলোকে ডিফাইন, ডিলিটিং, ইনডেক্স ক্রিয়েটিং, মডিফাইং (For defining, deleting, Indexing and modifying relation schemas) করা হয় এবং এর জন্য প্রয়োজনীয় কমান্ডসমূহ সরবরাহ করে থাকে, তাকে ডাটা ডেফিনিশন ল্যাংগুয়েজ বলে। ব্যবহৃত কমান্ডসমূহঃ
ক. Create statement
খ. Drop statement
গ. Alter statement
ঘ. Rename statement
উদাহরণ:
SQL> create table client master
2 (client no varchar2 (6), name varchar2 (20), address varchar2 (30),
3 city varchar2 (15), pincode number (6), remarks varchar2 (60),
4 bal due number (10, 2);
২. Data Manipulation Language (DML) : যে ডাটাবেস ল্যাংগুয়েজ এর মাধ্যমে রিলেশনাল ডাটাবেসে রিলেশনাল অ্যালজেবরা এবং টুপল রিলেশনাল ক্যালকুলাস এর উপর ভিত্তি করে প্রতিষ্ঠিত একটি কুয়েরি ল্যাংগুয়েজ (DML includes a Query language based on both the relational algebra and the tuple relational calculus) ব্যবহৃত হয়, যার মাধ্যমে রিট্রিন্ড, ইনসার্ট, ডিলিট, মডিফাই ইত্যাদি অপারেশন করা হয় এবং এর জন্য প্রয়োজনীয় কমান্ডসমূহ সরবরাহ করে থাকে, তাকে ডাটা ম্যানিপুলেশন ল্যাংগুয়েজ বলে।
ব্যবহৃত কমান্ডসমূহঃ
ক. Select Statement
খ. Insert Statement
গ. Update statement
ঘ. Delete statement
ঙ. Truncate statement
চ. Merge statement
ডাটা ম্যালিপুলেশন ল্যাংগুয়েজ আবার দু’প্রকার-
(i) প্রসিডিউরাল ডাটা ম্যালিপুলেশন ল্যাংগুয়েজ (Procedural data manipulation language)
(ii) নন- প্রসিডিউরাল ডাটা ম্যালিপুলেশন ল্যাংগুয়েজ (Non- procedural data manipulation language)
উদাহরণ:
SQL> Select ename, sal from emp
2 Where sal>2000;
আরও দেখুনঃ