SQL Server (Transact-SQL)-এ UPDATE কমান্ড একটি টেবিলে বিদ্যমান রেকর্ড আপডেট করতে ব্যবহৃত হয়। UPDATE কমান্ডের ৩টি সিনট্যাক্স রয়েছে, নির্ভর করে আপনি ট্র্যাডিশনাল স্টাইলে আপডেট করছেন কিনা বা অন্য টেবিলের ডেটা দিয়ে টেবিল আপডেট করছেন।
UPDATE কমান্ড সিনট্যাক্স
SQL Server-এ টেবিল আপডেট করার সিনট্যাক্স
UPDATE bang SET cot1 = bieuthuc1, cot2 = bieuthuc2, … [WHERE dieu_kien];
অন্য টেবিলের ডেটা দিয়ে টেবিল আপডেট করার সিনট্যাক্স, SELECT স্টেটমেন্ট কম্বাইন করে।
UPDATE bang1 SET cot1 = (SELECT bieuthuc1 FROM bang2 WHERE dieu_kien) [WHERE dieu_kien];
অথবা অন্য টেবিলের ডেটা দিয়ে টেবিল আপডেট করার আরেকটি সিনট্যাক্স
UPDATE bang1 SET bang1.cot = bang2.bieuthuc1 FROM bang1 INNER JOIN bang2 ON (bang1.cot1 = bang2.cot1) [WHERE dieu_kien];
ভেরিয়েবল নাম বা মান
cot1, cot2
আপডেট করতে চাওয়া কলাম।
bieuthuc1, bieuthuc2
cot1, cot2-এ নির্দিষ্ট করার নতুন মান। cot1-এ bieuthuc1-এর মান, cot2-এ bieuthuc2-এর মান অ্যাসাইন হবে।
WHERE dieu_kien
ঐচ্ছিক। রেকর্ড আপডেট করার জন্য যা শর্ত পূরণ করতে হবে।
উদাহরণ - ১ কলাম আপডেট
UPDATE nhanvien SET ho = 'Johnson' WHERE nhanvien_id = 10;
এই UPDATE কমান্ড nhanvien টেবিলের কর্মচারীর উপনাম Johnson হিসেবে আপডেট করবে যদি nhanvien_id ১০ হয়।
উদাহরণ - একাধিক কলাম আপডেট
একটি UPDATE কমান্ড দিয়ে একাধিক কলাম আপডেট করার উদাহরণ।
UPDATE nhanvien SET ten = 'Kyle', nhanvien_id = 14 WHERE ho = 'Johnson';
একাধিক কলাম আপডেট করতে চাইলে, কলাম/মান গুলো কমা দিয়ে আলাদা করুন।
উপরের UPDATE কমান্ড নাম Kyle এবং nhanvien_id ১৪ আপডেট করবে যদি ব্যক্তির উপনাম Johnson হয়।
উদাহরণ - অন্য টেবিলের ডেটা দিয়ে টেবিল আপডেট
MySQL-এ অন্য টেবিলের ডেটা দিয়ে টেবিল আপডেট করার উদাহরণ।
UPDATE nhanvien SET ten = (SELECT ten FROM danhba WHERE danhba.ho = nhanvien.ho) WHERE nhanvien_id > 95;
উপরের উদাহরণ nhanvien_id ৯৫ এর চেয়ে বেশি হলে টেবিলের সকল রেকর্ড আপডেট করবে। যদি কর্মচারীর উপনাম danhba টেবিলে থাকে এবং নাম একই হয়, তাহলে danhba-র নাম nhanvien টেবিলের নামে কপি হবে।
এই UPDATE কমান্ড দ্বিতীয় সিনট্যাক্স দিয়ে নিচের মত রি-রাইট করা যায়।
UPDATE nhanvien SET nhanvien.ten = danhba.ten FROM nhanvien INNER JOIN danhba ON (nhanvien.ho = danhba.ho) WHERE nhanvien_id > 95;