martes, 16 de agosto de 2011

Insertando valores en columnas identidad con SQL SERVER con IDENTITY_INSERT

Para poder insertar valores en columnas que tengan la propiedad de identidad en MS SQL Server empleamos la función IDENTTY_INSERT.

Las sintaxis es la siguiente:
SET IDENTITY_INSERT NombreDeTabla ON


--Aqui van los inserts
--especificando las columnas
--Ej. INSERT INTO NombreDeTabla (Col1, Col2)
--VALUES (Col2,Col)*/

SET IDENTITY_INSERT NombreDeTabla OFF
Es importante recordar volver a configurar la inserción de identidades automática despues de realizar las inserciones, mediante la instrucción SET IDENITY_INSERT OFF.

También es importante recalcar que se deben especificar las columnas a insertar, en caso contrario, SQL Server arrojará un error del tipo:

Error

An explicit value for the identity column in table '{TABLE}' can only be specified when a column list is used and IDENTITY_INSERT is ON.


No hay comentarios:

Publicar un comentario