提前爲簡單的術語和方法粗糙程序道歉。MySQL - 用於更新表的方法
比方說,我有一對夫婦的表像這樣:
ARTISTS
artistId | artistName
1 | Led Zeppelin
2 | Pink Floyd
ALBUMS
cdId | artistId | title
1 | 1 | Physical Graffiti
2 | 1 | Led Zeppelin IV
3 | 2 | Wish U Were Here
我試圖找出一種靈活的方式來更新下,一對夫婦的情況下,專輯表(儘管實際的表我有,標題實際上title_id是鍵入存儲在單獨表格中的ID)。
i。如果我出售我的兩張LZ CD併購買「Holy of Houses」,我應該刪除ALBUMS中現有的所有記錄,並在artistId = 1
處插入新記錄作爲「更新」的方式?我擔心的是可能會耗盡AUTO_INCREMENT主鍵ID,儘管我承認我懷疑我腦海中會看到如此多的流量以至於無符號的INT無法處理,並且比實現更容易我目前複雜的想法(對於我想添加的n
新記錄,請查找m
中的第一個m
中不匹配的現有記錄,更新這些記錄,並刪除剩餘的m - n
現在無關的記錄,這至少需要初步的如果我將更新基於「Led Zeppelin」),子查詢將獲得AID。
i.1。如果我想添加「HOTH」但刪除「IV」?我是否應該刪除兩個現有記錄並重新添加它們?
ii。如果我只是想糾正一個錯字,如cdId = 2
?