你真的不應該「重新組織」在你的數據庫的密鑰。如果您以關係方式使用數據庫,則可以引用另一個表中的VisitNo作爲將體重信息與您訪問時保存的其他信息關聯的方式。這個鏈接被稱爲關係,ID被稱爲主鍵,它不應該改變表中的一行,因爲它會破壞其他表中的任何引用(這些引用稱爲外鍵)。
儘管在您的VisitNo序列中看起來很不錯並且「整齊」,但是在刪除記錄時並不是真正正確的過程。
然而,這一課沒有出現,這裏是你如何改變VisitNo,假設它根本不是關鍵,而是一段用戶數據(即我第一次去健身房,我第二次參觀了健身房,我第三次參觀了體育館)
CREATE TABLE #RowNumber (
RowNumber int IDENTITY (1, 1),
id INT,
Weight INT )
INSERT #RowNumber (emp_id)
SELECT id, Weight
FROM tblMyTable
WHERE id = 1
ORDER BY VisitNo
SELECT * FROM #RowNumber
DROP TABLE #RowNumber
如果您運行此查詢(用您的表的名稱替換tblMyTable),你會看到ROWNUMBER列在本質上是重 - 編號VisitNo。你可以使用這些數據來回報你的桌子......雖然在這方面你的桌子結構有一個小問題。你需要一個主鍵,在桌子上給你一個很好的獨特的手柄,每行:
recordid id VisitNo Weight
1 1 1 100
2 1 2 95
3 1 3 96
4 1 4 94
5 1 5 93
沒有這一點,你就會有麻煩更新新VisitNo背靠桌子上,這將是這樣的:
recordid id VisitNo Weight
1 1 1 100
3 1 3 96
5 1 5 93
你改變它之後,它應該是這樣的:
recordid id VisitNo Weight
1 1 1 100
3 1 2 96
5 1 3 93
是VisitNo的自動編號? – 2010-03-12 08:39:18
爲什麼?通過重新編號您的「VisitNo」列,您獲得了什麼? – 2010-03-12 08:40:16