কম্পিউটার

রেকর্ড আপডেট করার সময় পরিবর্তন করার জন্য একটি MySQL সঞ্চিত পদ্ধতিতে পরিবর্তনশীল মান কিভাবে এড়াতে পারি?


আমরা একটি সংরক্ষিত পদ্ধতি তৈরি করব যা পরিবর্তনশীল মান পরিবর্তন করে না যখনই মান আপডেট করা হয়।

আসুন প্রথমে একটি টেবিল তৈরি করি -

mysql> টেবিল তৈরি করুন DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Value int); কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.63 সেকেন্ড)

সন্নিবেশ কমান্ড -

ব্যবহার করে টেবিলে কিছু রেকর্ড সন্নিবেশ করুন
mysql> DemoTable(Value) মানের (100) মধ্যে ঢোকান; কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.13 সেকেন্ড) সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন :mysql> DemoTable থেকে *নির্বাচন করুন;

আউটপুট

<প্রে>+------+------+| আইডি | মান |+---+------+| 1 | 100 |+----+-------+1 সারি সেটে (0.00 সেকেন্ড)

নিম্নলিখিত সংরক্ষিত পদ্ধতি যা আপডেট করার পরে পুরানো মান দেখায় −

mysql> DELIMITER // mysql> ক্রিয়েট প্রসিডিউর আপডেটValue100() myValue int ঘোষণা শুরু করুন; @myValue নির্বাচন করুন :=(DemoTable থেকে মান নির্বাচন করুন যেখানে Id=1); @myValue নির্বাচন করুন; আপডেট DemoTable সেট মান=200 যেখানে Id=1; @myValue নির্বাচন করুন :=(DemoTable থেকে মান নির্বাচন করুন যেখানে Id=1); @myValue নির্বাচন করুন; শেষ // ক্যোয়ারী ঠিক আছে, 0 সারি প্রভাবিত (0.21 সেকেন্ড)mysql> DELIMITER;

এখন আপনি CALL কমান্ড -

ব্যবহার করে সঞ্চিত পদ্ধতিতে কল করতে পারেন
mysql> কল updateValue100();

আউটপুট

<পূর্ব>+------------------------------------------------------------ ---------+| @myValue :=(DemoTable থেকে মান নির্বাচন করুন যেখানে Id=1) |+----------------------------------- ---------------------+| 100 |+------------------------------------------------------------ --------+1 সারি সেটে (0.00 সেকেন্ড)+----------+| @myValue |+---------+| 100 |+---------+1 সারি সেটে (0.01 সেকেন্ড)+---------------------------- -------------------------------+| @myValue :=(DemoTable থেকে মান নির্বাচন করুন যেখানে Id=1) |+----------------------------------- ---------------------+| 200 |+------------------------------------------------------------ --------+1 সারি সেটে (0.16 সেকেন্ড)+----------+| @myValue |+---------+| ২০০
  1. মাইএসকিউএল-এ একটি পদ্ধতির ভিতরে একটি ভেরিয়েবল কীভাবে ঘোষণা করবেন?

  2. কিভাবে MySQL এর সাথে তারিখ রেকর্ড সহ একটি টেবিলে তারিখ পরিবর্তন করবেন?

  3. একটি MySQL সঞ্চিত পদ্ধতির ভেরিয়েবলে একটি কলামের মান সংরক্ষণ করুন

  4. মাইএসকিউএল-এ ডাটাবেসে সন্নিবেশ করার সময় দশমিকের মান (19, 2) পরিবর্তন করবেন?