我有一些表格中的行需要转移到另一个表格中。在目标表格中,我还需要添加一个带有递增值的字段。
我正在进行以下操作,但我知道插入操作中有些问题,因为递增值(intCodInterno)始终相同:
我正在进行以下操作,但我知道插入操作中有些问题,因为递增值(intCodInterno)始终相同:
INSERT INTO Emp_VISOT.dbo.TBL_GCE_ARTIGOS
( strCodigo ,
strDescricao ,
intCodInterno ,
intCodTaxaIvaCompra ,
intCodTaxaIvaVenda ,
strCodCategoria ,
strAbrevMedStk ,
strAbrevMedVnd ,
strAbrevMedCmp ,
bitAfectaIntrastat
)(
SELECT A.Artigo ,
a.Descricao ,
IDENT_CURRENT('Emp_VISOT.dbo.TBL_GCE_ARTIGOS')+1,
'3' ,
'3' ,
'1' ,
'Un' ,
'Un' ,
'Un' ,
'0'
FROM PRIVESAM.DBO.Artigo A)
我需要更改什么才能正确地增加值?
谢谢。
编辑:
我在查询中进行了小修改,现在它可以工作了。 我只是在IDENT_CURRENT内插入了一个SELECT语句:
(SELECT IDENT_CURRENT('Emp_VISOT.dbo.TBL_GCE_ARTIGOS')+1)
我已经从旧表中获取了所需的所有行,并将其增量值迁移到新表中。
IDENT_CURRENT
,那意味着该表上有一个IDENTITY
列;只需不在列列表中指定该列并且不插入任何值到该列 - 当发生 INSERT 时,IDENTITY
列将自动获得一个新的唯一值... - marc_s