看板 Database 關於我們 聯絡資訊
※ 引述《slalala (WIKI大學生寫作業的題材)》之銘言: : 現在有個需求是關於資料異動。 : 不過因為資料關聯非常複雜 因此有一些小疑問。 : 表格大概是 : 1.消費者資料 2.地址資料 : PK使用身分證 其他表格則FK到消費者資料 : 可是地址資料我分的非常細且為了維持格式一致(參考郵局表格) : 所以縣市 區 路 街 巷 號 樓 都是一個個的欄位 : 以至於要更新的時候SQL指令會變的很複雜 : 一次更新大概需要update 20幾個欄位 ....好像是常見的痛 orz 同狀況的另一個痛是顯示地址…目前都是在存的時候順便存一個兜起來的地址。 : 前端的部分不是問題 jsp+js都能克服 : 現在卡在SQL的UPDATE不確定怎麼做才是最好的 : 我有個想法是 當程式偵測到消費者資料有需要更新的時候 : 先將地址資料刪除(除了消費者資料是用UPDATE) : 然後再新增新地址的資料 : 例如: : 舊消費者資料 舊消費者地址 ->偵測到異動消費者資料 -> : UPDATE 消費者TABLE ,DELETE 舊消費者地址 ,INSERT新消費者地址。 : 簡單說每次異動地址都會刪除再新增。 : 想請問一下這樣做會有缺點嗎? : 還是真的完全不建議這麼做? update本來就等於 delete再 insert; 真要說缺點…只想到沒有包交易,可能刪了沒新增,效率不會差太多 不過,感覺就是怪怪的 囧a 我只有匯資料才會用這種作法,省掉判斷該 insert還是 update, 一般維護程式很容易可以區分該新增還是修改… : 如果真的不建議這樣的方式 就只能花苦功慢慢update 能解決問題的方式都好,有多種方式再來研究哪個好。 這個狀況我想不到用 delete..insert能省到什麼工? 欄位不都要一個一個 key嗎?請指教。 : 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.229.209.153
slalala:我是用JSP 自己寫一個convert的地址轉換程式 無痛XD 06/20 23:54
slalala:表格加起來共50多個欄位 當然DEL INSERT有省到工 06/21 00:04
slalala:INSERT的部份做過了 所以才想DELETE後用繼承INSERT解決XD 06/21 02:42