Re: [請益] SQL server的流水號如何能重新計算?

看板Programming作者時間18年前 (2006/06/21 02:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
※ 引述《wsc1207.bbs@ptt.cc (大ㄅㄅ)》之銘言: : ※ 引述《artingo (實現吧!)》之銘言: : : 例如現有資料100筆 : : 在table中的首個欄位設為自動流水號 : : 如今欲刪除第51至100筆的資料 : : 然後另外新增新的50筆資料進去 : : 為何該欄位的流水號變為101~150 : : 而不是51~100 : : 導致資料表流水號欄位變為1~50,然後便跳號到101~150 : : 在程式碼中或SQL SERVER裡該如何設定 : : 才能解決這個空號的跳號問題? : : 謝謝! : 那是為了避免編號重複,作為其他表格欄位的key時一定不能重複 : 可以在該表格寫一個Trigger for Insert : 新增資料時先取得目前資料筆數,在自行+1寫入 : 或者在其他地方記錄筆數,該資料表格也可以用Trigger來做 : 寫兩個Trigger,一個insert時+1、一個delete時-1 : 作法很多種,也不複雜 要避免空號的問題 光用 +1 -1 恐怕還無法解決 還必須搭配 update 吧 但是這樣 對於整個系統會比較好嗎? 恐怕 自動編號的欄位 還是得保留 建議 另外用其他欄位來記錄 -- Origin:《 成大計中 BBS 站 》[bbs.ncku.edu.tw] 來源:[218-165-90-147.dynamic]
文章代碼(AID): #14c3VV00 (Programming)
文章代碼(AID): #14c3VV00 (Programming)