我有两个表的设计问题。从表中移动记录
表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