SQL (এসকিউএল) Syntax
Article By : Protap Chand
আজ আমরা শিখব এসকিউএল (SQL) সিনট্যাক্স বা বাক্যরীতি। যেকোন ভাষার শব্দভান্ডার নিয়ে যেমন একটি নিজস্ব বাক্যরীতি আছে। তেমন এসকিউএল এর সঠিকভাবে ফলাফল প্রদান করতে একটা গঠন বা বাক্যরীতি মেনে চলতে হয়। অন্যথায় error বা ভুল হয়েছে মর্মে বার্তা প্রদর্শন করবে।
এসকিউএল একটি ডাটাবেজ (database) থেকে ডাটা তুলে এনে প্রদর্শন করে ।
প্রথমে আমরা জানব ডাটাবেজ সম্পর্কে। ডাটাবেজ গঠিত হয় এক বা একাধিক টেবিলের সমন্বয়ে। একটি ডাটাবেজের অধীন যতগুলো টেবিল থাকবে তার প্রতিটির একটি পৃথক নাম থাকতে হবে। টেবিলে ডাটা সম্বলিত এক বা একাধিক রেকর্ড বা সারি থাকে।
এই টিউটিরিয়ালে আমরা বহুল পরিচিত Northwind স্যাম্পল ডাটাবেজটি ব্যবহার করব, যেটি মাইক্রোসফট Excel এবং MS SQL Server এর সাথে শিক্ষার্থীদের জন্য তৈরী অবস্থায় (readymade) সংযুক্ত করা থাকে। সেই ডাটাবেজের Customers টেবিল থেকে কিছু ডাটা SELECT কমান্ড প্রয়োগ করে বাছাই করা হয়েছে, যা নিচের টেবিলে দেখানো হলো:
CustomerID |
CustomerName |
ContactName |
Address |
City |
PostalCode |
Country |
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
উপরের টেবিলে পাচটি রেকর্ড (প্রতি কাস্টমার এর জন্য একটি করে) এবং সাতটি কলাম দেখা যাচ্ছে। কলামগুলোর নাম হচ্ছে CustomerID, CustomerName, ContactName, Address, City, PostalCode এবং Country.
SQL স্টেটমেন্ট (Statements)
একটি ডাটাবেজ থেকে ডাটা বা তথ্য তুলে আনা হয় SQL স্টেটমেন্ট ব্যবহার করে। নিচের SQL স্টেটমেন্টটি প্রয়োগ করলে Northwind ডাটাবেজের Customers টেবিলের সব ডাটা নির্বাচন হবে।
SELECT * FROM Customers;
এখানে উল্লেখ করা প্রয়োজন যে SQL স্টেটমেন্ট case sensitive নয়। অর্থাত ছোট হাতের (lower case) কিংবা বড় হাতের (upper case) অক্ষরে লেখা স্টেটমেন্ট একই ফল দেবে। তবে এই টিউটরিয়ালে আমরা বড় হাতের অক্ষরে স্টেটমেন্ট লিখব।
সেমিকোলন প্রসঙ্গ:
কিছু কিছু ডাটাবেজ সিস্টেমে কমান্ড কার্যকর করার জন্য প্রতিটি SQL স্টেটমেন্ট এর পর সেমিকোলন (;) প্রয়োজন হয়। যেসব ডাটাবেজ সিস্টেমে এক কলে সার্ভারে একাধিক স্টেটমেন্ট কার্যকর করা যায় সেই সিস্টেমে একাধিক SQL স্টেটমেন্ট কে একটির সঙ্গে অন্যটিকে আলাদা করতে সেমিকোলন হচ্ছে আদর্শ উপায়। এই টিউটরিয়ালে আমরা প্রতিটি SQL স্টেটমেন্ট এর পর সেমিকোলন ব্যবহার করব।
সবচে বেশি ব্যবহৃত এবং গুরুত্বপূর্ণ কিছু SQL কমান্ড নিচে দেয়া হলো:
- SELECT - ডাটাবেজ থেকে ডাটা নির্বাচন করে
- UPDATE – ডাটাবেজে ডাটা update বা হালনাগাদ করে
- DELETE – ডাটাবেজ থেকে ডাটা মুছে ফেলে
- INSERT INTO – ডাটাবেজে নতুন ডাটা প্রবেশ করায়
- CREATE DATABASE – নতুন ডাটাবেজ তৈরী করে
- ALTER DATABASE – ডাটাবেজে পরিবর্তন আনার কাজ করে
- CREATE TABLE – নতুন টেবিল তৈরী করে
- ALTER TABLE – একটি টেবিলে পরিবর্তন আনার কাজ করে
- DROP TABLE – নাম উল্লেখ করা টেবিলটি মুছে ফেলে
- CREATE INDEX – ইনডেক্স বা সার্চ কী তৈরী করে
- DROP INDEX – ইনডেক্স মুছে ফেলে