স্ট্রাকচার্ড ক্যোয়ারী ভাষা সম্পর্কে আপনার কি জানা প্রয়োজন?

স্ট্রাকচার্ড ক্যোয়ারী ল্যাঙ্গুয়েজ (এসকিউএল) একটি রিলেশনাল ডাটাবেসের সাথে ইন্টারঅ্যাক্ট করার জন্য ব্যবহৃত নির্দেশাবলী। আসলে এসকিউএল একমাত্র ভাষা যা অধিকাংশ ডেটাবেস বুঝতে পারে। যখনই আপনি এই ধরনের ডাটাবেসের সাথে যোগাযোগ করেন তখন সফটওয়্যারটি আপনার কমান্ডগুলি (যে কিনা মাউস ক্লিক বা ফর্ম এন্ট্রি) সেটি একটি SQL বিবৃতিতে অনুবাদ করে যে ডাটাবেসটি কীভাবে ব্যাখ্যা করা যায়। এসকিউএল এর তিনটি প্রধান উপাদান: ডাটা ম্যানিপুলেশন ল্যাংগুয়েজ (ডিএমএল), ডেটা ডিফারিনেশন ল্যাঙ্গুয়েজ (ডিডিএল) এবং ডেটা কন্ট্রোল ল্যাঙ্গুয়েজ (ডিসিএল)।

ওয়েবে এসকিউএল এর সাধারণ ব্যবহার

যেকোনো ডাটাবেস চালিত সফ্টওয়্যার প্রোগ্রামের ব্যবহারকারী হিসাবে, আপনি সম্ভবত এসকিউএল ব্যবহার করছেন, এমনকি যদি আপনি এটি না জানেন। উদাহরণস্বরূপ, একটি ডেটাবেস-চালিত ডায়নামিক ওয়েবপৃষ্ঠা (অধিকাংশ ওয়েবসাইটের মত) ব্যবহারকারীর ইনপুটগুলি ফর্ম এবং ক্লিক থেকে গ্রহণ করে এবং এটি একটি এসকিউএল কোয়েরির রচনা করার জন্য ব্যবহার করে যা পরবর্তী ওয়েব পৃষ্ঠা তৈরির জন্য প্রয়োজনীয় ডাটাবেস থেকে তথ্য সংগ্রহ করে।

একটি অনুসন্ধান ফাংশন সঙ্গে একটি সহজ অনলাইন ক্যাটালগ উদাহরণ বিবেচনা করুন। অনুসন্ধান পৃষ্ঠায় কেবল একটি পাঠ্য বাক্স সহ একটি ফর্ম থাকতে পারে যার মধ্যে আপনি একটি অনুসন্ধান শব্দ লিখুন এবং তারপর একটি অনুসন্ধান বোতামে ক্লিক করুন। যখন আপনি বোতামটি ক্লিক করেন, তখন ওয়েব সার্ভার অনুসন্ধানের শব্দ ধারণকারী পণ্য ডেটাবেস থেকে কোনও রেকর্ড উদ্ধার করে এবং আপনার অনুরোধের জন্য নির্দিষ্ট একটি ওয়েব পৃষ্ঠা তৈরি করার ফলাফলগুলি ব্যবহার করে।

উদাহরণস্বরূপ, যদি আপনি "আইরিশ" শব্দটি ধারণকারী পণ্যগুলি অনুসন্ধান করেন তাহলে, সার্ভারটি নিম্নলিখিত পণ্যগুলির পুনরুদ্ধারের জন্য নিম্নলিখিত SQL বিবৃতিটি ব্যবহার করতে পারে:

SELECT * পণ্যগুলি থেকে যেখানে '% irish%' নাম

অনুবাদিত, এই কমান্ড "পণ্য" নামক ডাটাবেস টেবিলের যে কোনও রেকর্ড উদ্ধার করে যা পণ্য নামের মধ্যে "আইরিশ" অক্ষর ধারণ করে।

ডেটা ম্যানিপুলেশন ভাষা

ডেটা ম্যানিপুলেশন ল্যাংগুয়েজ (ডিএমএল) এসকিউএল কমান্ডের উপসেটটি প্রায়শই ব্যবহার করা হয় - যেগুলি কেবলমাত্র কিছু ফর্মের মধ্যে একটি ডাটাবেসের বিষয়বস্তু নিপূণভাবে ব্যবহার করে। চারটি সাধারণ DML কমান্ডগুলি একটি ডাটাবেস (SELECT) কমান্ড থেকে তথ্য পুনরুদ্ধার করে, একটি ডাটাবেস (INSERT কমান্ড) -এ নতুন তথ্য যোগ করে, বর্তমানে ডাটাবেস (UPDATE কমান্ড) -এ সংরক্ষিত তথ্য সংশোধন করে এবং ডাটাবেস থেকে তথ্য সরিয়ে দেয় ( কমানো কমান্ড)

ডেটা ডেফিনিশন ভাষা

ডেটা ডেফিনিশনের ভাষা (DDL) এমন কমান্ডগুলি রয়েছে যা কম ঘন ঘন ব্যবহৃত হয়। ডি.ডি.এল কমান্ড ডাটাবেসের বিষয়বস্তু পরিবর্তে ডাটাবেসের প্রকৃত গঠন পরিবর্তন করে। সাধারণত ব্যবহৃত ডি.ডি.এল কমান্ডের উদাহরণগুলি একটি নতুন ডাটাবেস সারণি তৈরি করতে ব্যবহৃত হয় (তৈরি টেবিল), ডাটাবেস টেবিলের গঠন পরিবর্তন করুন (ALTER TABLE) এবং ডাটাবেস সারণি (ড্রপ ট্যাবলেবল) মুছুন।

ডাটা কন্ট্রোল ভাষা

ডেটা কন্ট্রোল ভাষা (ডিসিএল) ব্যবহারকারীদের ডেটাবেস অ্যাক্সেস পরিচালনা করতে ব্যবহৃত হয়। এটি দুটি কমান্ডের মধ্যে রয়েছে: GRANT কমান্ড, একটি ব্যবহারকারীর জন্য ডাটাবেস অনুমতি যুক্ত করতে ব্যবহৃত হয়, এবং REVOKE কমান্ড, বিদ্যমান অনুমতিগুলি সরাতে ব্যবহৃত হয়। এই দুটি কমান্ড রিলেশনাল ডাটাবেস নিরাপত্তা মডেলের মূল গঠন করে।

একটি এসকিউএল কমান্ডের গঠন

সৌভাগ্যবশত আমাদের যারা কম্পিউটার প্রোগ্রামার না তাদের জন্য, এসকিউএল কমান্ডগুলি একটি সিনট্যাক্স ইংরেজি ভাষার অনুরূপ করার জন্য ডিজাইন করা হয়েছে। সাধারণত তারা একটি কমান্ডের বিবৃতি দিয়ে শুরু করে যা কর্মের বর্ণনা করে, একটি ধারা অনুসরণ করে যা কমান্ডের লক্ষ্য (যেমন কমান্ড দ্বারা প্রভাবিত একটি ডাটাবেসের মধ্যে নির্দিষ্ট সারণি) এবং পরিশেষে একটি ধারাবাহিক ধারা যা অতিরিক্ত নির্দেশাবলী প্রদান করে।

প্রায়ই, জোরে জোরে একটি এসকিউএল বিবৃতি পড়া আপনি কমান্ড কি উদ্দেশ্যে করা হয় একটি খুব ভাল ধারণা দিতে হবে। একটি এসকিউএল বিবৃতি এই উদাহরণ পড়া একটি মুহূর্ত নিন:

শিক্ষার্থীদের কাছ থেকে ডিগ্রী কোথায় গ্র্যাজুয়েশন_যাইরে = 2014

আপনি কি এই বক্তব্য কি অনুমান করতে পারেন? এটি ডাটাবেসের শিক্ষার্থীর টেবিলের অ্যাক্সেস করে এবং 2014 সালে স্নাতক ছাত্রদের জন্য সমস্ত রেকর্ড মুছে ফেলে।

এসকিউএল প্রোগ্রামিং শেখা

আমরা এই নিবন্ধে একটি সহজ এসকিউএল উদাহরণ দিকে তাকিয়ে আছে, কিন্তু এসকিউএল একটি বিস্তৃত এবং শক্তিশালী ভাষা। একটি আরো গভীরতার ভূমিকা জন্য, এসকিউএল ফাউন্ডমেন্টাল দেখুন