কম্পিউটার

প্রস্তুত বিবৃতি এবং MySQL ব্যবহারকারী ভেরিয়েবলের মধ্যে মিল কি?


যেমন আমরা জানি যে MySQL ব্যবহারকারী ভেরিয়েবলগুলি ক্লায়েন্ট সংযোগের জন্য নির্দিষ্ট যার মধ্যে সেগুলি ব্যবহার করা হয় এবং শুধুমাত্র সেই সংযোগের সময়কালের জন্য বিদ্যমান থাকে৷ একটি সংযোগ শেষ হলে, তার সমস্ত ব্যবহারকারী ভেরিয়েবল হারিয়ে যায়। একইভাবে, প্রস্তুত বিবৃতিগুলিও শুধুমাত্র সেই অধিবেশনের সময়কালের জন্য বিদ্যমান থাকে যেখানে এটি তৈরি করা হয় এবং এটি যে অধিবেশনে তৈরি হয় তাতে এটি দৃশ্যমান হয়। একটি অধিবেশন শেষ হলে, সেই অধিবেশনের জন্য সমস্ত প্রস্তুত বিবৃতি বাতিল করা হয়৷

আরেকটি মিল হল যে প্রস্তুত বিবৃতিগুলি মাইএসকিউএল ব্যবহারকারী ভেরিয়েবলের মতো কেস-সংবেদনশীল নয়। উদাহরণস্বরূপ, stmt11 এবং STMT11 উভয়ই নিম্নলিখিত উদাহরণে চিত্রিত হিসাবে একই -

mysql> Select * from student;
+------+-------+
| Id   | Name  |
+------+-------+
| 1    | Ram   |
| 2    | Shyam |
| 3    | Rohan |
+------+-------+
3 rows in set (0.00 sec)

mysql> SET @A = 'Sohan', @B = 3;
Query OK, 0 rows affected (0.00 sec)

mysql> EXECUTE Stmt11 USING @A, @B;
Query OK, 1 row affected (0.12 sec)

mysql> Select * from Student;
+------+-------+
| Id   | Name  |
+------+-------+
| 1    | Ram   |
| 2    | Shyam |
| 3    | Sohan |
+------+-------+
3 rows in set (0.00 sec)

mysql> SET @A = 'Gaurav', @B = 3;
Query OK, 0 rows affected (0.00 sec)

mysql> EXECUTE STMT11 USING @A, @B;
Query OK, 1 row affected (0.04 sec)

mysql> Select * from Student;
+------+--------+
| Id   | Name   |
+------+--------+
| 1    | Ram    |
| 2    | Shyam  |
| 3    | Gaurav |
+------+--------+
3 rows in set (0.00 sec)

উপরের উদাহরণে, একবার আমরা stmt11 কার্যকর করেছি এবং পরের বার আমরা STMT11 কার্যকর করেছি এবং উভয়ই একই কাজ করেছে কারণ প্রস্তুত বিবৃতিগুলি কেস-সংবেদনশীল নয়৷


  1. মাইএসকিউএল-এ TINYINT(1) এবং বুলিয়ানের মধ্যে পার্থক্য কী?

  2. MySQL এ!=NULL এবং IS NOT NULL এর মধ্যে পার্থক্য কি?

  3. MySQL 8.0-এ অপশন এবং ভেরিয়েবল কি কি অবচয়?

  4. MySQL 8.0 এ কোন বিকল্প এবং ভেরিয়েবল চালু করা হয়েছে?