PHP實現更新中間關聯表資料的兩種方法

2022-09-28 20:03:20 字數 876 閱讀 7482

首先,中間關聯表:這裡的中間表只存表1的主鍵和表2的主鍵,即多對多的形式。

執行資料新增和刪除為框架內部方法,不屬於思路部分。

方法一:先全部刪除舊資料,後新增新資料

$res = $this->classes->classedit($id, $data);  //修改主表資料

if($res)

}  $this->show_tips('操作成功!');

}else

使用該方法弊端:大批量刪除資料這塊兒不安全,存在一定程度的安全隱患。

方法二:只新增需要的,只刪要刪的

//庫中查出的舊資料:$arr_old (處理過的一程式設計客棧維陣列)

//提交過來的新資料:$arr_new www.cppcns.com(得到的一維陣列)

$intersect = array_intersect($arr_old, $arr_new);   //交集(需要保留的部分,不用處理)

$result_del = array_diff($arr_old, $intersect);    //舊資料中需要刪除的

$result_add = array_diff($arr_new, $intersect);    //新資料中需要增加的

//新增新增資料

if($result_add && is_array($result_add))

}//刪除需要清除的資料

if($result_del && is_array($result_del))

}if($bool_add && $bool_del)

else

該方法特點:有針對性的新增資料和刪除資料,較第一種方法,安全性高

本文標題: php實現更新中間關聯表資料的兩種方法

本文位址:

三個表關聯更新資料

問題 想寫乙個sql,按照 使用者現在所屬的部門 更新需求表中的 duty deptid,duty deptname,duty deptnameall 這三個字段值。其中 xq需求表中字段duty userid duty username duty deptid,duty deptname,duty...

update關聯其他表批量更新資料

批量更新表時,update乙個表的列時,需要依賴另外的表,這種依賴可以是where條件子句,也可以要update的field的值依賴另外的表 通常有兩種做法 1.使用儲存過程 2.在程式 裡逐條迴圈執行 這裡給出一種更高效 簡潔的做法,批量更新sql 一句sql就可以替代麻煩的迴圈過程,有ms sq...

Oracle的關聯表更新(二)

oracle資料庫中有乙個表formtable main 159 dt1結構如下 mainid,id 161,100,161,101,161,102,162,103 162,104 163,105 現在增加乙個字段序號,實現如下的效果 mainid,id,xuhao 161,100,1 161,10...