2
我試圖通過在一個文件中生成一系列SQL命令來提供psql
進行處理,以儘可能延遲。簡而言之,我從外部源(已經完成,通過COPY)加載一系列導入表,然後在最後一步中,刪除/更新/插入記錄到主表中(這在功能上也完成了)。檢測錯誤以決定是回滾還是提交
阻止我成功的唯一因素(並且能夠通過shell腳本中的一系列命令完成所有操作)是這樣一個事實,即有時該操作具有參照完整性錯誤,因此我必須回滾所有內容直到源可以被識別和糾正。
那麼在psql
處理的腳本中是否有任何方法知道是否發生錯誤並執行回滾?如果沒有錯誤,提交。
我總是可以通過切換到更高級別的語言來解決問題,打開連接並運行每個語句並檢查錯誤,但這只是所有更多的代碼,如果可能的話我想盡量避免。
嗯...應該是: \設置ON_ERROR_STOP 不知道從哪裏額外*的是從哪裏來的。 – 2009-10-02 16:17:37