এই দিন

মঙ্গলবার   ১১ আগস্ট ২০২০   শ্রাবণ ২৬ ১৪২৭   ২০ জ্বিলহজ্জ ১৪৪১

Beta Version
   এই দিন
সর্বশেষ:
লেবাননের প্রধানমন্ত্রীর পদত্যাগ সিনহা হত্যা মামলা: ৪ আসামির ১০ দিনের রিমান্ড চেয়ে আবেদন শারীরিক উপস্থিতিতে শুরু হতে যাচ্ছে হাইকোর্টের বিচারকাজ বাংলাদেশে আটকে পড়া নাগরিকদের ফেরানোর নির্দেশ ভারত সরকারের কোতোয়ালির ওসিসহ পাঁচ পুলিশের বিরুদ্ধে চাঁদাবাজির মামলা করোনায় আজ আরও ৩৯ জনের মৃত্যু, শনাক্ত ২৯০৭ এবার অর্থ আত্মসাতের মামলায় রিমান্ডে শাহেদ সংবাদ সম্মেলন করে কেঁদে কেঁদে সন্তান হত্যার বিচার চাইলেন সিনহার মা শিপ্রার পর সিনহার সহযোগী সিফাতেরও জামিন মিলল
২৫৩

চলুন শিখি SQL: পর্ব -৯

বিজ্ঞান ডেস্ক

প্রকাশিত: ২৯ জুলাই ২০২০  

আজ আমরা UNIQUE CONSTRAINT STATEMENT ও DEFAULT CONSTRAINT STATEMENT সম্পর্কে জানবো। তবে প্রথম থেকে না শিখে থাকলে নিউজের শেষে লিংক আছে। ক্লিক করে আগের পর্বগুলো একটু জেনে নিন। চলুন তাহলে শুরু করা যাক-

 

UNIQUE CONSTRAINT STATEMENT: UNIQUE Constraint (কনস্ট্রেইন্ট) দ্বারা ডেটাবেজে ইউনিক (Unique) রেকর্ড ইনসার্ট করা হয়। এক বা একাধিক কলামের রেকর্ডকে ইউনিক করতে UNIQUE এবং PRIMARY KEY কনস্ট্রেইন্ট উভয়ই ব্যবহার করা হয়। একটি PRIMARY KEY কনস্ট্রেইন্ট এর মধ্যে স্বয়ংক্রিয়ভাবে UNIQUE কনস্ট্রেইন্ট ডিফাইন করা থাকে।

একটি টেবিলের একাধিক কলামে UNIQUE কনস্ট্রেইন্ট থাকতে পারে কিন্তু একটি টেবিলের শুধুমাত্র একটি কলামেই PRIMARY KEY কনস্ট্রেইন্ট ব্যবহার করা যায়।

 

টেবিল তৈরির সময় SQL UNIQUE কনস্ট্রেইন্ট এর ব্যবহার

নিম্নের SQL স্টেটম্রন্টটি "Student_Details" টেবিল তৈরির সময় "Roll_Number" কলামটি UNIQUE কনস্ট্রেইন্ট এর মাধ্যমে ইউনিক হবে।

 

MySQL এর জন্য:

CREATE TABLE Student_Details(
    Id int NOT NUll,
    Roll_Number varchar(255),
    Student_Name varchar(255),
    Institute varchar(255),
    Address varchar(255),
    UNIQUE(Roll_Number)
);

Oracle/SQL Server/MS Access এর জন্য:

CREATE TABLE Student_Details(
    Id int NOT NUll,
    Roll_number varchar(255) UNIQUE,
    Student_name varchar(255),
    Institute varchar(255),
    Address varchar(255)
);


একটি UNIQUE কনস্ট্রেইন্ট এর নাম দেওয়ার জন্য এবং একাধিক কলামে UNIQUE কনস্ট্রেইন্ট ডিফাইন করার জন্য নিম্নের SQL সিনট্যাক্সটি ব্যবহার করা হয়।

 

MySQL/Oracle/SQL Server/MS Access এর জন্য:

CREATE TABLE Student_Details(
    Id int NOT NUll,
  Roll_Number varchar(255),
  Student_Name varchar(255),
  Institute varchar(255),
  Address varchar(255),
CONSTRAINT Student_Id UNIQUE (Id, Roll_Number)
);


পূর্বের তৈরি টেবিলে SQL UNIQUE কনস্ট্রেইন্টের ব্যবহার:

ডেটাবেজে পূর্ব থেকে বিদ্যমান একটি টেবিলের "Id" কলামকে UNIQUE করতে ALTER TABLE স্টেটমেন্টটের সাথে নিম্নের ন্যায় ADD UNIQUE কনস্ট্রেইন্ট ব্যবহার করা হয়ঃ
ALTER TABLE name_of_table
ADD UNIQUE (name_of_column);

 

MySQL/Oracle/SQL Server/MS Access এর জন্য:

ALTER TABLE Student_Details
ADD CONSTRAINT Student_Id UNIQUE (Id, Roll_Number);

 

UNIQUE কনস্ট্রেইন্ট ডিলেট করা:

UNIQUE কনস্ট্রেইন্ট ডিলেট করতে নিম্নের SQL স্টেটমেন্টটি ব্যবহার করা হয়ঃ

 

MySQL এর জন্য:

ALTER TABLE name_of_table
DROP INDEX name_of_column;


Oracle/SQL Server/MS Access এর জন্য:

ALTER TABLE Student_Details
DROP CONSTRAINT Student_Id;
 

DEFAULT CONSTRAINT STATEMENT: Default Constraint (কনস্ট্রেইন্ট) ব্যবহার করে কলামের মধ্যে একটি ডিফল্ট (Default) ভ্যালু ইনপুট করা যায়। কলামে কোন নির্দিষ্ট মান ইনপুট না করা হলে সকল নতুন রেকর্ডের মধ্যে স্বয়ংক্রিয়ভাবে Default ভ্যালুটি যোগ হয়ে যায়।

 

টেবিল তৈরির ক্ষেত্রে SQL Default কনস্ট্রেইন্টের ব্যবহার:

নিম্নের SQL স্টেটমেন্টটি "Student_Details" টেবিল তৈরী করার সময় "Institute" কলামে Default কনস্ট্রেইন্ট সেট করবে।


MySQL /Oracle/ SQL Server/MS Access এর জন্য:

CREATE TABLE Student_Details(
    Id int NOT NUll,
    Roll_Number varchar(255),
    Student_Name varchar(255),
    Institute varchar(255) DEFAULT 'জাতীয় বিশ্ববিদ্যালয়',
    Address varchar(255)
);


সিস্টেম ভ্যালু ইনর্সাট করার জন্য ফাংশন যেমন- GETDATE() এর সাথেও Default কনস্ট্রেইন্ট ব্যবহার করা হয়।

 

MySQL /Oracle/ SQL Server/MS Access এর জন্য:

CREATE TABLE Student_Attendance(
    Id int NOT NUll,
    Roll_Number varchar(255),
    Attendance varchar(255),
    Admission_Date Date DEFAULT GETDATE()
);


পূর্বের তৈরি টেবিলে SQL Default কনস্ট্রেইন্টের ব্যবহার:

নিম্নের SQL স্টেটমেন্টটি পূর্বে তৈরিকৃত "Student_Details" টেবিলের "Institute" কলামে Default কনস্ট্রেইন্ট সেট করবে।

 

MySQL এর জন্য:

ALTER TABLE name_of_table
ALTER name_of_column SET DEFAULT 'Value';

উদাহরণ:

ALTER TABLE Student_Details
ALTER Institute SET DEFAULT 'জাতীয় বিশ্ববিদ্যালয়';


Oracle এর জন্য:

ALTER TABLE Student_Details
MODIFY Institute DEFAULT 'জাতীয় বিশ্ববিদ্যালয়';

 

SQL Server/MS Access এর জন্য:

ALTER TABLE Student_Details
ALTER COLUMN Institute SET DEFAULT 'জাতীয় বিশ্ববিদ্যালয়';


Default কনস্ট্রেইন্ট ডিলেট করা:

একটি Default কনস্ট্রেইন্ট ডিলিট করতে নিম্নের SQL স্টেটমেন্টটি ব্যবহার করুন।


MySQL এর জন্য:

ALTER TABLE name_of_table
ALTER name_of_column DROP DEFAULT;

উদাহরণ:
ALTER TABLE Student_Details
ALTER Institute DROP DEFAULT;

 

Oracle/SQL Server/MS Access এর জন্য:

ALTER TABLE Student_Details
ALTER COLUMN Institute DROP DEFAULT;

 

পরবর্তী পর্বে আমরা CHECK CONSTRAINT STATEMENT সম্পর্কে জানবো। 

সপ্তম পর্ব জানতে এই লিংকে ক্লিক করুন: চলুন শিখি SQL: পর্ব -৮

   এই দিন
এই বিভাগের আরো খবর