এসকিউএল কি?(What is SQL? )
এসকিউএল(SQL) হলো স্ট্রাকচার্ড কুয়েরি ল্যাঙ্গুয়েজ(Structured Query Language) যা রিলেশনাল ডেটাবেজে সঞ্চিত ডেটা সংরক্ষণ, পুনরুদ্ধার এবং পরিচালনার জন্য ব্যবহৃত একটি স্টান্ডার্ড ভাষা।
MySQL, SQL Server, Access, Oracle, Sybase ইত্যাদি রিলেশনাল ডেটাবেজ ম্যানেজমেন্ট সিস্টেম-সমূহ(RDBMS) SQL কে স্টান্ডার্ড ভাষা হিসাবে ব্যবহার করে।
- SQL এর পূর্ণরূপঃ Structured Query Language ।
- SQL এর মাধ্যমে আপনি রিলেশনাল ডেটাবেজে এক্সেস করতে পারবেন।
- SQL একটি ANSI(American National Standards Institute) স্ট্যান্ডার্ড।
SQL কি কি করতে পারে?
- SQL ইউজারকে রিলেশনাল ডেটাবেজ ম্যানেজমেন্ট সিস্টেম থেকে ডেটা এক্সেস করতে অনুমতি দেয়।
- SQL ডেটাবেজে কুয়েরি সম্পাদন করতে পারে।
- SQL নতুন ডেটাবেজ তৈরি করতে পারে।
- SQL ডেটাবেজে নতুন টেবিল তৈরি করতে পারে।
- SQL ডেটাবেজ থেকে তথ্য পুনরূদ্ধার করতে পারে।
- SQL ডেটাবেজে তথ্য সংরক্ষন করতে পারে।
- SQL ডেটাবেজে তথ্য হালনাগাদ করতে পারে।
- SQL ডেটাবেজ থেকে তথ্য মুছে ফেলতে পারে।
- SQL ডেটাবেজের মধ্যে তথ্য সংরক্ষণ পদ্ধতি তৈরি করতে পারে।
- SQL ডেটাবেজের ভিউ(view) তৈরি করতে পারে।
- SQL ডেটাবেজে টেবিল, কার্যপ্রনালী এবং ভিউ এর উপর পারমিশন সেট করতে পারে।
- SQL ডেটাবেজে যে কোন কার্য-সম্পাদন করতে পারে।
SQL একটি স্ট্যান্ডার্ড
SQL ভাষা ANSI(American National Standards Institute) স্ট্যান্ডার্ড হওয়া সত্ত্বেও এর কিছু ভিন্ন ভার্সনও রয়েছে।
যাইহোক, ANSI স্ট্যান্ডার্ড মেনে চলার জন্য SQL এর সকল ভার্সন-ই প্রধান প্রধান কমান্ড-সমূহ যেমন- CREATE
, SELECT
, UPDATE
, DELETE
, INSERT
, WHERE
ইত্যাদি সাপোর্ট করে।
বিঃদ্রঃ অধিকাংশ SQL ডেটাবেজ প্রোগ্রামের SQL স্ট্যান্ডার্ড ছাড়াও তাদের নিজস্ব কিছু এক্সটেনশন রয়েছে।
ওয়েব সাইটে SQL এর ব্যবহার
ডেটাবেজ থেকে তথ্য দেখাবে এমন একটি ওয়েব-সাইট তৈরী করতে যা প্রয়োজন হবেঃ
- একটি RDBMS ডেটাবেজ প্রোগ্রাম। যেমন- MS Access, SQL Server, MySQL ইত্যাদি।
- একটি সার্ভার সাইড স্ক্রিপ্টিং ভাষা। যেমন- PHP অথবা ASP
- ডেটাবেজ থেকে যে কোনো তথ্য পেতে আপনাকে SQL(Sql) ব্যবহার করতে হবে।
- এছাড়া ডায়নামিকভাবে তথ্য এক্সেস করতে চাইলে SQL এর সাথে Ajax অথবা Jquery-ও ব্যবহার করতে পারেন।
RDBMS
RDBMS এর পূর্ণরূপঃ Relational Database Management System.
RDBMS হলো SQL এর ভিত্তি এবং সকল মর্ডান ডেটাবেজ সিস্টেমেরও ভিত্তি। যেমন- MS SQL Server, IBM DB2, Oracle, MySQL এবং Microsoft Access।
তথ্য-সমূহ RDBMS ডেটাবেজ এর অবজেক্টে সংরক্ষিত থাকে, আমাদের কাছে এই অবজেক্টগুলো টেবিল নামে পরিচিত। একটি টেবিল সম্মন্ধযুক্ত কিছু তথ্যের(data) সংগ্রহ যা কলাম(field) এবং সারি(tuple/record) নিয়ে গঠিত। আমাদের সকল তথ্য ডেটাবেজের এই কলাম এবং সারির মধ্যেই সংরক্ষিত হয়/থাকে।
ডেটাবেজ টেবিল
একটি ডেটাবেজে প্রায়ই এক বা একাধিক টেবিল থাকে। প্রতিটি টেবিলকেই নির্দিষ্ট নাম দ্বারা শনাক্ত করা হয়। যেমন- “Student_details” অথবা “Student_result”। টেবিলের প্রতিটি সারি তথ্য নিয়ে গঠিত হয়।
উদাহরণ হিসাবে আমরা আমাদের টিউটোরিয়ালে একটি নমুনা ডেটাবেজ ব্যবহার করবো।
উদাহরণস্বরুপঃ নিচের অংশটুকু নমুনা ডেটাবেজের “Student_details” টেবিল থেকে নেওয়া হয়েছেঃ
উপরের টেবিলটিতে পাঁচটি সারি(প্রতি সারিতে একজন শিক্ষার্থী) এবং চারটি কলাম রয়েছে (ক্রমিক নং, শিক্ষার্থীর নাম, প্রতিষ্ঠানের নাম এবং ঠিকানা) যাহাতে ৫ জন শিক্ষার্থীর সম্পর্কে বিস্তারিত তথ্য রয়েছে।
SQL স্টেটমেন্ট(কমান্ড)
SQL স্টেটমেন্ট(statement) এর মাধ্যমে ডেটাবেজের বেশির ভাগ ক্রিয়াকলাপ সম্পাদিত হয়।
নিচের SQL স্টেটমেন্টটি “Student_details” টেবিল থেকে সকল রেকর্ড সিলেক্ট করবেঃ
উদাহরণ
SELECT * FROM Student_details;
আমাদের এই টিউটোরিয়ালে অধিকাংশ SQL স্টেটমেন্ট পর্যায়ক্রমে তুলে ধরা হয়েছে।
SQL কীওয়ার্ড-সমূহ কেস-সেন্সিটিভ নয়। যেমনঃ select
এবং SELECT
একই অর্থে ব্যবহৃত হয়।
আমাদের এই টিউটোরিয়ালে আমরা SQL কীওয়ার্ড-সমূহকে বড়-হাতের অক্ষরে লিখবো। এর দরুন আমরা SQL কীওয়ার্ড-সমূহকে SQL স্টেটমেন্টের মধ্যে খুব সহজেই শনাক্ত করতে পারবো।
সেমিকোলন(;) এর ব্যবহার
কিছু কিছু ডেটাবেজ সিস্টেমে প্রতিটি SQL স্টেটমেন্টের শেষে একটি সেমিকোলন(;) ব্যবহার করতে হয়।
ডেটাবেজ সিস্টেমে স্টেটমেন্ট-সমূহকে আলাদা করার আদর্শ উপায় হলো সেমিকোলন(;) যা ডেটাবেজ সিস্টেম সার্ভারে একই সাথে একাধিক SQL স্টেটমেন্ট এক্সিকিউট করতে পারে।
এই টিউটোরিয়ালের প্রতিটি SQL স্টেটমেন্টের শেষে আমরা সেমিকোলন ব্যবহার করবো।
সচরাচর ব্যবহৃত SQL কমান্ড-সমূহ
USE
– ডিফল্ট ডেটাবেজ সিলেক্ট করে।DESCRIBE
– ডেটাবেজের টেবিলের গঠন দেখায়।SELECT
– ডেটাবেজ থেকে তথ্য পুনরূদ্ধার(retrieve) করে।UPDATE
– ডেটাবেজের তথ্য আপডেট করে।DELETE
– ডেটাবেজ থেকে তথ্য ডিলেট করে।INSERT INTO
– ডেটাবেজে নতুন তথ্য প্রবেশ করায়।CREATE DATABASE
– নতুন ডেটাবেজ তৈরি করে।ALTER DATABASE
– ডেটাবেজ পরিবর্তন করে।CREATE TABLE
– নতুন টেবিল তৈরি করে।ALTER TABLE
– টেবিল পরিবর্তন করে।DROP TABLE
– টেবিল ডিলেট করে।CREATE INDEX
– ইন্ডেক্স তৈরি করে।DROP INDEX
– ইন্ডেক্স ডিলেট করে।
COPYRIGHT: If you believe that any content on this site infringes your copyright,please send a takedown notice using a verifiable email address to: [email protected]We will review your request and respond promptly, typically within 2 business days, to address and remove any infringing content