আমরা জানি যে মাইএসকিউএল একটি ত্রুটি তৈরি করবে যদি সাংখ্যিক এক্সপ্রেশনের মূল্যায়নের সময় ওভারফ্লো ঘটে। উদাহরণস্বরূপ, সবচেয়ে বড় স্বাক্ষরিত BIGNT হল 9223372036854775807, তাই নিচের অভিব্যক্তিটি একটি ত্রুটি তৈরি করবে −
mysql> 9223372036854775807 + 1; ERROR 1690 (22003) নির্বাচন করুন:BIGINT মান '(9223372036854775807+1)'-এ সীমার বাইরেMySQL নিম্নলিখিত উপায়ে এই ধরনের ওভারফ্লো পরিচালনা করতে পারে:
মূল্যকে আনসাইনড-এ রূপান্তর করে
MySQL নিম্নরূপ −
mysql> CAST নির্বাচন করুন (9223372036854775807 আনসাইনড হিসাবে) +1;+------------------------------------------------ --------+| CAST(9223372036854775807 আনসাইনড) +1 |+----------------------------------------- --+| 9223372036854775808 |+--------------------------------------------+1 সারি সেটে (0.07 সেকেন্ড)সঠিক-মান পাটিগণিত ব্যবহার করে
MySQL পূর্ববর্তী অভিব্যক্তি পরিচালনা করতে সঠিক-মানের গাণিতিক ব্যবহার করতে পারে। কারণ ওভারফ্লো ঘটে অপারেন্ডের পরিসরের উপর নির্ভর করে। উদাহরণস্বরূপ, উপরের গণনাটি নিম্নরূপ −
হিসাবে দশমিক মান ব্যবহার করে করা যেতে পারেmysql> নির্বাচন করুন 9223372036854775807.0 + 1;+---------------+| 9223372036854775807.0 + 1 |+-----------------------------------------+| 9223372036854775808.0 |+----------------------------+1 সারি সেটে (0.01 সেকেন্ড)