原因 :
關聯生成的強制約束問題,在洗掉的時候回檢查表之間的關聯關系,從而導致無法洗掉,
如果強行洗掉表,就會報錯,
解決:
- 關閉外鍵約束,
- 執行洗掉操作,
- 然后再開啟外鍵約束
示例代碼:
@Override
public void deleteById(int id) {
QueryRunner qr = new QueryRunner(DataSourceUtils.getDataSource());
try {
// 1.解除外鍵關聯
qr.update("SET foreign_key_checks = 0");
// 2.執行洗掉陳述句
qr.update("delete from tb_user where id = ?",id);
// 3.重新關聯外鍵
qr.update("SET foreign_key_checks = 1");
} catch (SQLException e) {
e.printStackTrace();
throw new RuntimeException("洗掉失敗!", e);
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/244735.html
標籤:其他
