SQL Server-এ প্রাইমারি কি তৈরি, মুছে ফেলা, নিষ্ক্রিয় বা সক্রিয় করার পদ্ধতি সিনট্যাক্স ও উদাহরণ সহ শিখুন।
SQL Server-এ প্রাইমারি কি কী?
SQL Server (Transact-SQL)-এ প্রাইমারি কি হল একটি ফিল্ড বা ফিল্ডের কম্বিনেশন যা একটি রেকর্ডকে এককভাবে চিহ্নিত করে। প্রাইমারি কির কোনো ফিল্ডে NULL মান থাকতে পারে না। একটি টেবিলে শুধু একটি প্রাইমারি কি থাকতে পারে। প্রাইমারি কি CREATE TABLE কমান্ড বা ALTER TABLE কমান্ড দিয়ে সংজ্ঞায়িত করা যায়।
প্রাইমারি কি তৈরি - CREATE TABLE কমান্ড দিয়ে
CREATE TABLE কমান্ড দিয়ে প্রাইমারি কি তৈরির সিনট্যাক্স
CREATE TABLE ten_bang ( cot1 kieu_du_lieu [ NULL | NOT NULL ] [ PRIMARY KEY ], cot2 kieu_du_lieu [ NULL | NOT NULL ], . );
অথবা
CREATE TABLE ten_bang ( cot1 kieu_du_lieu [ NULL | NOT NULL ], cot2 kieu_du_lieu [ NULL | NOT NULL ], … CONSTRAINT ten_rang_buoc PRIMARY KEY (cot1, cot2, … cot_n) );
CREATE TABLE কমান্ড দিয়ে প্রাইমারি কি তৈরির উদাহরণ
CREATE TABLE nhanvien ( nhanvien_id INT PRIMARY KEY, ho VARCHAR(50) NOT NULL, ten VARCHAR(50), NOT NULL, luong MONEY );
এই উদাহরণে, nhanvien টেবিলের প্রাইমারি কি nhanvien_id নামে একটি ফিল্ড দিয়ে তৈরি। প্রাইমারি কি নিচের মতেও তৈরি করা যায়।
CREATE TABLE nhanvien ( nhanvien_id INT, ho VARCHAR(50) NOT NULL, ten VARCHAR(50), NOT NULL, luong MONEY CONSTRAINT nhanvien_pk PRIMARY KEY (nhanvien_id) );
এখন SQL Server-এ ১টির অধিক ফিল্ড দিয়ে প্রাইমারি কি তৈরির উদাহরণ।
CREATE TABLE nhanvien ( ho VARCHAR(50) NOT NULL, ten VARCHAR(50), NOT NULL, luong MONEY CONSTRAINT nhanvien_pk PRIMARY KEY (ho, ten) );
এই উদাহরণে, আমরা ho এবং ten नामের দুটি কলাম দিয়ে প্রাইমারি কি তৈরি করেছি। এই দুটি ফিল্ড টেবিলে রেকর্ডকে এককভাবে চিহ্নিত করবে।
প্রাইমারি কি তৈরি - ALTER TABLE কমান্ড দিয়ে
প্রাইমারি কি শুধু ALTER TABLE কমান্ড দিয়ে তৈরি করা যায় যেসব কলাম NOT NULL হিসেবে সংজ্ঞায়িত। যদি কলাম NULL মান অনুমতি দেয়, তবে টেবিল মুছে পুনরায় তৈরি না করলে প্রাইমারি কি যোগ করা যাবে না।
ALTER TABLE কমান্ড দিয়ে প্রাইমারি কি তৈরির সিনট্যাক্স
ALTER TABLE ten_bang ADD CONSTRAINT ten_rang_buoc PRIMARY KEY (cot1, cot2, … cot_n);
ALTER TABLE কমান্ড দিয়ে প্রাইমারি কি তৈরির উদাহরণ
ALTER TABLE nhanvien ADD CONSTRAINT nhanvien_pk PRIMARY KEY (nhanvien_id);
এই উদাহরণে, আমরা বিদ্যমান টেবিলের জন্য প্রাইমারি কি তৈরি করছি, যাতে nhanvien_id ফিল্ড থাকে। লক্ষ্য করুন nhanvien_id ফিল্ড আগে থেকে NOT NULL হিসেবে সংজ্ঞায়িত থাকতে হবে, অন্যথায় টেবিল মুছে পুনরায় তৈরি করতে হবে এবং এই ফিল্ডকে NOT NULL হিসেবে সংজ্ঞায়িত করতে হবে।
আপনি ১টির অধিক ফিল্ড দিয়ে প্রাইমারি কি তৈরি করতে পারেন নিচের উদাহরণের মত।
ALTER TABLE nhanvien ADD CONSTRAINT nhanvien_pk PRIMARY KEY (ho, ten);
টেবিলের প্রাইমারি কি ২টি ফিল্ড দিয়ে তৈরি: উপনাম এবং নাম। দুটোই NOT NULL হিসেবে সংজ্ঞায়িত থাকতে হবে।
SQL Server-এ প্রাইমারি কি মুছে ফেলা (Delete)
ALTER TABLE কমান্ড দিয়ে প্রাইমারি কি মুছে ফেলার সিনট্যাক্স
ALTER TABLE ten_bang DROP CONSTRAINT ten_rang_buoc;
ALTER TABLE কমান্ড দিয়ে প্রাইমারি কি মুছে ফেলার উদাহরণ
ALTER TABLE nhanvien DROP CONSTRAINT nhanvien_pk;
উপরের উদাহরণ টেবিল থেকে প্রাইমারি কি মুছে ফেলবে।
SQL Server-এ প্রাইমারি কি নিষ্ক্রিয় করা (Disable)
ALTER INDEX কমান্ড দিয়ে প্রাইমারি কি নিষ্ক্রিয় করার সিনট্যাক্স
ALTER INDEX ten_rang_buoc ON ten_bang DISABLE;
ALTER INDEX কমান্ড দিয়ে প্রাইমারি কি নিষ্ক্রিয় করার উদাহরণ
ALTER INDEX nhanvien_pk ON nhanvien DISABLE;
উপরের উদাহরণ টেবিলের প্রাইমারি কি নিষ্ক্রিয় করবে।
SQL Server-এ প্রাইমারি কি সক্রিয় করা (Enable/Rebuild)
ALTER INDEX কমান্ড দিয়ে প্রাইমারি কি সক্রিয় করার সিনট্যাক্স
ALTER INDEX ten_rang_buoc ON ten_bang REBUILD;
ALTER INDEX কমান্ড দিয়ে প্রাইমারি কি সক্রিয় করার উদাহরণ
ALTER INDEX nhanvien_pk ON nhanvien REBUILD;
উপরের উদাহরণ টেবিলের প্রাইমারি কি পুনরায় সক্রিয় করবে।