Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Database Handling Errors ใน Python - จัดการข้อผิดพลาดฐานข้อมูล

มีแหล่งข้อผิดพลาดมากมาย ตัวอย่างเช่น syntax error ในคำสั่ง SQL ที่รัน, connection failure, หรือการเรียก fetch method สำหรับ statement handle ที่ยกเลิกหรือจบแล้ว

DB API กำหนดข้อผิดพลาดหลายประเภทที่ต้องมีในทุก database module ตารางด้านล่างแสดง exception ต่างๆ:

ลำดับException & Description
1Warning
ใช้สำหรับปัญหาที่ไม่ร้ายแรง ต้อง subclass StandardError
2Error
คลาสฐานสำหรับข้อผิดพลาด ต้อง subclass StandardError
3InterfaceError
ใช้สำหรับข้อผิดพลาดใน database module ไม่ใช่ database เอง ต้อง subclass Error
4DatabaseError
ใช้สำหรับข้อผิดพลาดใน database ต้อง subclass Error
5DataError
Subclass ของ DatabaseError อ้างถึงข้อผิดพลาดในข้อมูล
6OperationalError
Subclass ของ DatabaseError อ้างถึงข้อผิดพลาดเช่นการสูญเสียการเชื่อมต่อ database ข้อผิดพลาดเหล่านี้มักอยู่นอกเหนือจากการควบคุมของ Python scripter
7IntegrityError
Subclass ของ DatabaseError สำหรับสถานการณ์ที่จะทำลายความสมบูรณ์เชิงสัมพันธ์ เช่น uniqueness constraints หรือ foreign keys
8InternalError
Subclass ของ DatabaseError อ้างถึงข้อผิดพลาดภายใน database module เช่น cursor ไม่ active แล้ว
9ProgrammingError
Subclass ของ DatabaseError อ้างถึงข้อผิดพลาดเช่นชื่อตารางผิด และสิ่งอื่นๆ ที่สามารถ đổความผิดให้คุณได้
10NotSupportedError
Subclass ของ DatabaseError อ้างถึงการพยายามเรียกฟังก์ชันที่ไม่รองรับ

สคริปต์ Python ของคุณควรจัดการข้อผิดพลาดเหล่านี้ แต่ก่อนใช้ exception ใดๆ ข้างต้น ตรวจสอบว่า MySQLdb รองรับ exception นั้นหรือไม่ สามารถอ่านข้อมูลเพิ่มเติมได้จาก DB API 2.0 specification