ত্রুটির অনেক উৎস আছে। কয়েকটি উদাহরণ হল একটি এক্সিকিউটেড এসকিউএল স্টেটমেন্টে একটি সিনট্যাক্স ত্রুটি, একটি সংযোগ ব্যর্থতা, বা ইতিমধ্যে বাতিল বা সমাপ্ত স্টেটমেন্ট হ্যান্ডেলের জন্য আনয়ন পদ্ধতিতে কল করা।
DB API অনেকগুলি ত্রুটি সংজ্ঞায়িত করে যা প্রতিটি ডাটাবেস মডিউলে থাকা আবশ্যক। নিম্নলিখিত সারণী এই ব্যতিক্রমগুলিকে তালিকাভুক্ত করে৷
৷Sr.No. | ব্যতিক্রম এবং বর্ণনা |
---|---|
1 | সতর্কতা অ-মারাত্মক সমস্যার জন্য ব্যবহৃত। মানক ত্রুটি সাবক্লাস করতে হবে। |
2 | ত্রুটি ত্রুটির জন্য বেস ক্লাস। মানক ত্রুটি সাবক্লাস করতে হবে। |
3 | ইন্টারফেস ত্রুটি ডাটাবেস মডিউলে ত্রুটির জন্য ব্যবহৃত হয়, ডাটাবেস নিজেই নয়। অবশ্যই সাবক্লাস ত্রুটি। |
4 | ডেটাবেস ত্রুটি ডাটাবেসের ত্রুটির জন্য ব্যবহৃত হয়। অবশ্যই সাবক্লাস ত্রুটি। |
5 | ডেটা ত্রুটি DatabaseError এর সাবক্লাস যা ডেটাতে ত্রুটি বোঝায়। |
6 | অপারেশনাল ত্রুটি DatabaseError এর সাবক্লাস যা ডাটাবেসের সাথে সংযোগ হারানোর মতো ত্রুটিগুলিকে বোঝায়। এই ত্রুটিগুলি সাধারণত পাইথন স্ক্রিপ্টারের নিয়ন্ত্রণের বাইরে। |
7 | IntegrityError এমন পরিস্থিতির জন্য ডেটাবেস ত্রুটির সাবক্লাস যা সম্পর্কগত অখণ্ডতাকে ক্ষতিগ্রস্ত করবে, যেমন স্বতন্ত্রতা সীমাবদ্ধতা বা বিদেশী কী। |
8 | অভ্যন্তরীণ ত্রুটি৷ DatabaseError এর সাবক্লাস যা ডাটাবেস মডিউলের অভ্যন্তরীণ ত্রুটিগুলিকে বোঝায়, যেমন একটি কার্সার আর সক্রিয় নেই। |
9 | প্রোগ্রামিং ত্রুটি DatabaseError-এর সাবক্লাস যা ত্রুটিগুলিকে বোঝায় যেমন একটি খারাপ টেবিলের নাম এবং অন্যান্য জিনিস যা আপনাকে নিরাপদে দায়ী করা যেতে পারে। |
10 | NotSupportedError DatabaseError-এর সাবক্লাস যা অসমর্থিত কার্যকারিতা কল করার চেষ্টাকে বোঝায়। |
আপনার পাইথন স্ক্রিপ্টগুলি এই ত্রুটিগুলি পরিচালনা করা উচিত, তবে উপরের ব্যতিক্রমগুলির মধ্যে যেকোনও ব্যবহার করার আগে, নিশ্চিত করুন যে আপনার MySQLdb সেই ব্যতিক্রমটির জন্য সমর্থন করে। আপনি DB API 2.0 স্পেসিফিকেশন পড়ে তাদের সম্পর্কে আরও তথ্য পেতে পারেন।