看板 PHP 關於我們 聯絡資訊
我現在有兩個table 我會利用他們的id判斷來抓資料 但是因為table 1某些資料delete 另一個table 2他好像不會自動把對應的id也delete 現在造成用id比對時都會抓錯資料 請問怎麼解決呢?! 煩請各位先進幫忙 感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.16.201
chrisQQ:先從 table1 select 出 id, 然後對 table2 做 not in 12/09 10:30
chrisQQ:delete。不過最終解決方法還是要從程式上做修改 12/09 10:30
chrisQQ:刪除table1時同時也刪除table2對應的值 12/09 10:31
chrisQQ:或是資料庫支援的話就建立個trigger 12/09 10:33
chrisQQ:不過理論上,「應該」不會抓錯資料…只會抓不到資料而已 12/09 10:34
twsphere:你應該是用LEFT JOIN 才會抓錯資料吧 如果key對的話 12/09 11:07
maplecat:理論上 要不是t2的fk欄位抓錯 就是t1砍錯資料 12/09 11:07
maplecat:因為沒有對應下 t1資料被砍 有fk也不會影響到抓取 12/09 11:08
michaelz:foreign key constraint 12/13 03:24
cspy:不意外 如果沒有做references 就要用where去鍵結 12/14 22:12