看板 Database 關於我們 聯絡資訊
※ 引述《forgmonkey (悲情城市之悲情程式猿)》之銘言: : 正遇到問題呢... : 想說ptt有DB板 沒想到居然剛開板ㄟ... 酷斃了!! : 恭賀會研究用哪種鍵盤打java快的PSMonkey成為版主 都說不要貼開版祝賀文了... ==.== : 同是monkey推!!! : 好啦.. 以下是問題: : mysql下 primary key可以設定auto increase : 他實作方式是會紀錄一個數字 : 每次Insert一筆資料就會拿這個數字當primary key 並且遞增之 : 但是我遇到一個問題... 今天我新增10個資料 : 就有主鍵1~10的這幾筆資料 : 然後刪掉4 ,6, 剩下8筆 : 然後再新增一筆 我希望他會成為主鍵4而不是11 : 能夠在SQL的語法那邊就解決掉嘛? : 還是必須每次插入都要用程式檢查最小的空欄是哪一個? : 不過我想這種方式因該load太大吧? 我比較想問的是,你這樣子的需求何在? 為什麼要搞這麼麻煩的事情來虐待自己? 我是想不到真實狀況需要這樣子作的... [茶] 也是提外話 我也不太喜歡 auto increase 我寧願多花一點 resource,然後用 uniqueID (Java 裡頭有 UUID 這個 class 可以產生 M$ SQL 有 newid() 這個 function,可以在 insert 的時候叫用 其他環境... 不清楚... [逃]) : //以下有點題外話 : 會有這個困難 起因是比方這個資料表叫A 有另外一個資料表B靠A的主鍵與之關聯 : 如果A4被刪掉 那所有B中和a4關聯的全部變成無主孤魂啊 : 我想到的另一種方式是... 乾脆刪掉a4時,順便殺掉b中和a4關聯的東西... -- 侃侃長論鮮窒礙 網站:http://www.psmonkey.idv.tw 眾目睽睽無心顫 個人版:telnet://legend.twbbs.org 煢居少聊常人事 殺頭容易告白難 歡迎參觀 Java 版(@ptt.cc)精華區 \囧/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.204.16.17