Luego de de esta larga compilación de información solucionamos esta traba que pueden tener ciertos de nuestros lectores. Te ofrecemos la respuesta y esperamos servirte de gran ayuda.
Solución:
Está intentando realizar una actualización, no insertando nuevas filas.
Para hacer eso, deberá configurar identity_insert
EN y copie la fila que desea actualizar a una nueva fila con el nuevo valor de ID, luego elimine la fila anterior (suponiendo que ningún FK haga referencia a ella)
Algo del estilo de:
set identity_insert GeoCountry on
go
insert into GeoCountry (all columns including IDentity column)
select 18, (all columns except IDentity column)
from GeoCountry where CountryID = 250
-- Delete will only work if no referencing FK's
delete GeoCountry where CountryID = 250
set identity_insert GeoCountry off
go
[Given that you are trying to update it, that would suggest it is still in use (i.e. by referencing FK’s) and that makes things more complicated…]
No puede actualizar la columna de identidad en SQL Server. Debe eliminar el registro original, luego Insertar el registro con el valor de Identidad porque no hay soporte para actualizar un valor de identidad.
establecer Identity_Insert [ColumnName] En Insertar identidad e información adicional almacenada previamente en ese conjunto de registros Identity_Insert [ColumnName] Apagado
Si está intentando actualizar una columna de identidad, aquí hay un enfoque posible:
- En SQL Server Management Studio, abra la tabla en la vista de diseño, deshabilite “Especificación de identidad > Es identidad” en la columna
- Realizar actualizaciones
- Habilite “Especificación de identidad > Es identidad” en la columna
hacer un SELECT IDENT_CURRENT('