উত্তর:
প্রশ্নের মধ্যে কোডের সংক্ষিপ্ত উত্তর হ'ল:
UPDATE `table` SET test=number
এখানে table
টেবিলের নাম এবং এটি ঘিরে রয়েছে গুরুতর উচ্চারণ (ওরফে ব্যাক-টিকস `) এটি কীওয়ার্ডগুলি এড়াতে মাইএসকিউএল কনভেনশন (এবং TABLE
সেই ক্ষেত্রে একটি কীওয়ার্ড)।
সাবধান, এটি বেশ বিপজ্জনক ক্যোয়ারী যা test
আপনার টেবিলের প্রতিটি সারিতে কলামে সমস্ত কিছু মুছে ফেলবে number
(এটির মান নির্বিশেষে)
WHERE
আপনার ক্যোয়ারিকে কেবলমাত্র সারিগুলির নির্দিষ্ট সেটগুলিতে সীমাবদ্ধ করতে ক্লজটি ব্যবহার করা বেশি সাধারণ :
UPDATE `products` SET `in_stock` = true WHERE `supplier_id` = 10
update command
... সাথে পরিচিত না হন তবে যেখানে কোনও ক্লজ না থাকলে এই কমান্ডটি update
সমস্ত টেবিলে রেকর্ড করবে ।
UPDATE `table_name` SET `test` = `number`
আপনি প্রক্রিয়াটিতে যে কোনও গাণিতিক পরিবর্তন করতে পারেন বা মানগুলি সংশোধন করতে মাইএসকিউএল ফাংশন ব্যবহার করতে পারেন।
এটা চেষ্টা কর:
update `list`
set `test` = `number`
list
ডিবি নাম?
সতর্কতা : আপডেট কলামগুলির ক্রম সমালোচনা
ভাল : আমি কী চাই প্রিভস্ট্যাটাসের স্থিতির বিদ্যমান মান সংরক্ষণ করি
UPDATE Collections SET PrevStatus=Status, Status=44 WHERE ID=1487496;
BAD : স্থিতি এবং প্রিভ স্ট্যাটাস উভয়ই 44 হিসাবে শেষ
UPDATE Collections SET Status=44, PrevStatus=Status WHERE ID=1487496;
নিম্নলিখিত চেষ্টা করুন:
UPDATE `list` SET `test` = `number`
এটি "সংখ্যা" থেকে সমস্ত মানের অনুলিপি তৈরি করে এবং এটি "পরীক্ষায়" পেস্ট করে
নিম্নলিখিত আমার জন্য কাজ ..
একটি টেবিলে বলে, 'test_update_cmd', উত্স মান কলাম কল 2, লক্ষ্য মান কলাম 1 এবং শর্ত কলাম কল 3: -
UPDATE test_update_cmd SET col1=col2 WHERE col3='value';
শুভকামনা!
আপনি প্রক্রিয়াটি দিয়েও এটি করতে পারেন তাই আমার এটির জন্য একটি পদ্ধতি আছে
DELIMITER $$
CREATE PROCEDURE copyTo()
BEGIN
DECLARE x INT;
DECLARE str varchar(45);
SET x = 1;
set str = '';
WHILE x < 5 DO
set str = (select source_col from emp where id=x);
update emp set target_col =str where id=x;
SET x = x + 1;
END WHILE;
END$$
DELIMITER ;