python cx_Oracle錯誤集錦
最近專案上線,python連線資料庫部分出現很多問題,總結一下
錯誤一:python3 UnicodeEncodeError: 'gbk' codec can't encode character '\xXX' in position XX
待解決
錯誤二:oracle DatabaseError:DPI-1054:connection cannot be closed when open statement or LOBs exist
原因是這個欄位是JSON格式
json.load(xxx.read()) 讀取之後轉換成字典,就可以根據key來獲取value
cursor.prepare("INSERT INTO python_modules(module_name, file_path) VALUES (:1, :2)")
原因是VALUES括號的冒號缺少導致
錯誤四:ORA-00933: SQL 命令未正確結束 / ORA-00933: SQL command not properly ended
查了其他的部落格大多是因為sql語句後有分號導致的,我是因為想把程式開始執行的時間寫入到資料的starttime字 段,寫入的資料的format與這個欄位不匹配,但是寫入‘20181021174356’字串能夠寫入
錯誤五:ORA-01502:index or partition of such index is in unusable
折騰了我一天的問題,這個可能是資料庫在遷移過程中造成index unusable,rebuild一下index即可解決
錯誤六:“ ORA-00001: unique constraint”
主鍵衝突