我有一個主設備表,通過它的ID(FK)鏈接到其他表(特定的設備信息表)。檢查是否所有插入在外鍵上都成功
因此,我的創建表單將特定設備類型信息(例如PC HDD大小,OS ...)插入適當的設備類型表(每個設備類型有一個),然後我將$ this-> db-> insert_id(),並將其與一般設備信息(如購買日期,授權截止日期等)一起插入主設備表中。
這個效果很好。但是,如果由於任何原因主表的數據無效 - 第二個查詢將失敗,並將插入的行留在適當的設備類型表中。
有沒有一種方法來檢查查詢是否會成功之前實際執行我的模型中的完整功能?或者 - 如果第二個查詢(或第三,第四...如果我有多個插入)失敗,是否可以回滾更改?
我認爲你最好檢查爲什麼第二次插入查詢失敗的原因,爲什麼以及如何將無效數據加入到你的程序中?你忘了逃避一些字符串?還有別的嗎? –
啊,這不是查詢失敗 - 我只是想知道一般 - 是否有辦法確保插入代碼本身。我的插入工作是因爲我使用jQuery和後端的CI驗證設置了前端驗證,所以在插入和處理數據時這非常安全。 – Skipp