Python 連接 MySQL 錯(cuò)誤處理

2022-08-04 17:39 更新

DB API中定義了一些數(shù)據(jù)庫(kù)操作的錯(cuò)誤及異常,下表列出了這些錯(cuò)誤和異常:

異常 描述
Warning 當(dāng)有嚴(yán)重警告時(shí)觸發(fā),例如插入數(shù)據(jù)是被截?cái)嗟鹊?。必須?StandardError 的子類。
Error 警告以外所有其他錯(cuò)誤類。必須是 StandardError 的子類。
InterfaceError 當(dāng)有數(shù)據(jù)庫(kù)接口模塊本身的錯(cuò)誤(而不是數(shù)據(jù)庫(kù)的錯(cuò)誤)發(fā)生時(shí)觸發(fā)。 必須是Error的子類。
DatabaseError 和數(shù)據(jù)庫(kù)有關(guān)的錯(cuò)誤發(fā)生時(shí)觸發(fā)。 必須是Error的子類。
DataError 當(dāng)有數(shù)據(jù)處理時(shí)的錯(cuò)誤發(fā)生時(shí)觸發(fā),例如:除零錯(cuò)誤,數(shù)據(jù)超范圍等等。 必須是DatabaseError的子類。
OperationalError 指非用戶控制的,而是操作數(shù)據(jù)庫(kù)時(shí)發(fā)生的錯(cuò)誤。例如:連接意外斷開(kāi)、 數(shù)據(jù)庫(kù)名未找到、事務(wù)處理失敗、內(nèi)存分配錯(cuò)誤等等操作數(shù)據(jù)庫(kù)是發(fā)生的錯(cuò)誤。 必須是DatabaseError的子類。
IntegrityError 完整性相關(guān)的錯(cuò)誤,例如外鍵檢查失敗等。必須是DatabaseError子類。
InternalError 數(shù)據(jù)庫(kù)的內(nèi)部錯(cuò)誤,例如游標(biāo)(cursor)失效了、事務(wù)同步失敗等等。 必須是DatabaseError子類。
ProgrammingError 程序錯(cuò)誤,例如數(shù)據(jù)表(table)沒(méi)找到或已存在、SQL語(yǔ)句語(yǔ)法錯(cuò)誤、 參數(shù)數(shù)量錯(cuò)誤等等。必須是DatabaseError的子類。
NotSupportedError 不支持錯(cuò)誤,指使用了數(shù)據(jù)庫(kù)不支持的函數(shù)或API等。例如在連接對(duì)象上 使用.rollback()函數(shù),然而數(shù)據(jù)庫(kù)并不支持事務(wù)或者事務(wù)已關(guān)閉。 必須是DatabaseError的子類。
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)