কম্পিউটার টিউটোরিয়াল

SQL Server-এ ইউনিক কনস্ট্রেইন্ট (Unique Constraints)

এই টিউটোরিয়ালে SQL Server-এ ইউনিক কনস্ট্রেইন্ট তৈরি, যোগ এবং ডিলিট করার পদ্ধতি ব্যাখ্যা করা হয়েছে।

SQL Server-এ ইউনিক কনস্ট্রেইন্ট কী?

ইউনিক কনস্ট্রেইন্ট হলো একটি ফিল্ড বা ডেটা ফিল্ডের কম্বিনেশন, যা একটি রেকর্ডকে অনন্যভাবে সনাক্ত করে। কিছু ফিল্ড NULL মান ধারণ করতে পারে, যতক্ষণ না মানগুলোর কম্বিনেশন ইউনিক থাকে।

প্রাইমারি কি এবং ইউনিক কনস্ট্রেইন্টের পার্থক্য

প্রাইমারি কি ইউনিক কনস্ট্রেইন্ট
প্রাইমারি কির কোনো ফিল্ডে NULL মান অনুমোদিত নয়। ইউনিক কনস্ট্রেইন্টের কিছু ফিল্ডে NULL মান থাকতে পারে, যতক্ষণ না কম্বিনেশন ইউনিক থাকে।

CREATE TABLE কমান্ড দিয়ে ইউনিক কনস্ট্রেইন্ট তৈরি

CREATE TABLE table_name
(
    column1 datatype [ NULL | NOT NULL ],
    column2 datatype [ NULL | NOT NULL ],
    ...
    CONSTRAINT constraint_name UNIQUE (column1_c, column2_c, ... column_n_c)
);

table_name - তৈরি করতে চাওয়া টেবিলের নাম

column1, column2 - টেবিলে তৈরি করতে চাওয়া কলাম

constraint_name - ইউনিক বাধার নাম

column1_c, column2_c, ... column_n_c - ইউনিক কনস্ট্রেইন্ট গঠনকারী কলামগুলো

উদাহরণ

CREATE TABLE nhanvien
(
    id_nhanvien INT PRIMARY KEY,
    so_nhanvien INT NOT NULL,
    ho VARCHAR(50) NOT NULL,
    ten VARCHAR(50),
    luong MONEY,
    CONSTRAINT nhanvien_duynhat UNIQUE (so_nhanvien)
);

এই উদাহরণে, CREATE TABLE কমান্ড দিয়ে তৈরি টেবিলে nhanvien_duynhat নামক একটি ইউনিক কনস্ট্রেইন্ট তৈরি করা হয়েছে, যেটি শুধু so_nhanvien ফিল্ড নিয়ে গঠিত।

একাধিক ফিল্ড নিয়েও ইউনিক কনস্ট্রেইন্ট তৈরি করা যায়, নিচের উদাহরণটি দেখুন:

CREATE TABLE nhanvien
(
    id_nhanvien INT PRIMARY KEY,
    so_nhanvien INT NOT NULL,
    ho VARCHAR(50) NOT NULL,
    ten VARCHAR(50),
    luong MONEY,
    CONSTRAINT nhanvien_duynhat UNIQUE (ho, ten)
);

ALTER TABLE কমান্ড দিয়ে ইউনিক কনস্ট্রেইন্ট তৈরি

ALTER TABLE table_name
ADD CONSTRAINT constraint_name UNIQUE (column1, column2, ... column_n);

table_name - সম্পাদনা করতে চাওয়া টেবিলের নাম। এটিই वो টেবিল যেতে ইউনিক কনস্ট্রেইন্ট যোগ করতে চান।

constraint_name - তৈরি করতে চাওয়া ইউনিক কনস্ট্রেইন্টের নাম।

column1, column2, ... column_n - ইউনিক কনস্ট্রেইন্ট গঠনকারী কলামগুলো।

উদাহরণ

ALTER TABLE nhanvien
ADD CONSTRAINT nhanvien_duynhat UNIQUE (so_nhanvien);

উপরের উদাহরণে ALTER TABLE কমান্ড ব্যবহার করে বিদ্যমান টেবিল nhanvien-এ so_nhanvien ফিল্ডে ইউনিক কনস্ট্রেইন্ট তৈরি করা হয়েছে। একাধিক ফিল্ডের জন্য নিচের উদাহরণটি দেখুন:

ALTER TABLE nhanvien
ADD CONSTRAINT nhanvien_duynhat UNIQUE (ho, ten);

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

সিনট্যাক্স

ALTER TABLE table_name
DROP CONSTRAINT constraint_name;

table_name - সম্পাদনা করতে চাওয়া টেবিলের নাম। এটিই वो টেবিল যেতে ইউনিক কনস্ট্রেইন্ট ডিলিট করতে চান।

constraint_name - ডিলিট করতে চাওয়া ইউনিক কনস্ট্রেইন্টের নাম।

উদাহরণ

ALTER TABLE nhanvien
DROP CONSTRAINT nhanvien_duynhat;

উপরের উদাহরণে টেবিল থেকে nhanvien_duynhat নামক ইউনিক কনস্ট্রেইন্ট মুছে ফেলা হয়েছে।

  1. SQL Server-এ চেক কনস্ট্রেইন্ট (Check Constraints)

  2. SQL Server-এ ইনডেক্স (Index)

  3. SQL Server-এ PROCEDURE (প্রোসিজার/স্টোরড প্রোসিজার)

  4. MS SQL Server কী?