我有兩個表的設計問題。從表中移動記錄
表1:主表,稱爲批處理。從解析文件中添加值。表2:該表的工作原理與日誌表類似,每一行從表1中刪除。
例
表1
ID text
1 'bla1'
2 'bla2'
3 'bla3'
刪除行其中id是2和3
表2
ID text
2 'bla2'
3 'bla3'
問題:
如果我插入ID2和3再次在表1中刪除它?表2將具有相同的數據。我怎樣才能解決這個問題?我應該只是讓ID也是標識列嗎?所以,當我加2點的記錄會是這樣(額外的問題我怎麼保持如果我刪除整個表1計算):
表1
ID
4 'Bla3'
5 'Bla4'
其實我有三張表,但我想要的解決方案是ID總是增加,即使我刪除表,沒有櫃檯重置。 我試着避免這個問題: 當我從表1中刪除(觸發器插入到表2)所有的行。然後我再次填充表中解析文件得到的值。 我不希望ID從1開始,因爲當我刪除它(觸發器插入表2)時,表2中會出現錯誤(int 1的重複ID)。 – Danny 2012-03-26 11:15:35
這就是IDENTITY列的用途。只要保持獨立,它就會不斷增加。從你的'INSERT'語句中排除它,把它留給SQL Server來填充它。 – cairnz 2012-03-26 11:21:41
傻我,是的,我用truncate而不是delete。謝謝。標記爲答案。 – Danny 2012-03-26 11:35:02