La columna de clave principal a menudo se establece para que aumente automáticamente al construir una base de datos de SQL Server. El límite de IDENTIDAD está activado para que la columna de clave principal haga esto. La ubicación inicial y el paso de incremento se transfieren a la columna IDENTIDAD como parámetros. Luego, cada vez que se agrega un nuevo registro y el inserto de identidad se establece en APAGADO, el valor de la columna IDENTIDAD aumenta en el paso predefinido que normalmente es un número. Además, la propiedad IDENTITY INSERT se establece en ON solo para una tabla en una sola sesión.
En este artículo, discutiremos el error. 'No se puede insertar un valor explícito para la columna de identidad en la tabla Desactivando 'IDENTITY INSERT OFF' e insertando datos sin 'PRIMARY KEY ID' en la instrucción de inserción El error surge cuando el usuario ha establecido 'identity_insert' en 'OFF'. Luego intenta insertar datos en la columna de clave principal de la tabla de forma explícita. Esto se puede explicar con el ejemplo siguiente. Primero, cree una base de datos llamada 'appuals'. Creación de una base de datos denominada 'appuals'. Cree una tabla llamada 'persona' usando el siguiente código. Mesa construida usando un 'IDENTIDAD CLAVE PRIMARIA' Creando una tabla llamada 'persona' los “Desactivar identity_insert | en' nos ayudará a resolver este error. La sintaxis correcta para esta declaración es la siguiente. Mientras que el primer argumento es el nombre de la base de datos en la que se encuentra la tabla. El segundo argumento que se muestra es el esquema al que pertenece esa tabla cuyo valor de identidad debe establecerse en EN o APAGADO . El tercer argumento Fundamentalmente, existen dos formas diferentes de insertar datos en la tabla sin errores. Estos se consideran la solución a este error y se analizan a continuación. En el primer caso, insertaremos datos en la tabla con el 'INSERTAR IDENTIDAD' ajustado a 'APAGADO' . Entonces, si el ID está presente en la declaración INSERT, obtendrá el error 'No se puede insertar un valor explícito para la columna de identidad en la tabla 'persona' cuando IDENTITY_INSERT está desactivado'. Ejecute el siguiente código en la pestaña de consulta.cuando IDENTITY_INSERT está desactivado ' Como se muestra abajo.
Creación de bases de datos y tablas:
CREATE TABLE persona (ID INT IDENTITY (1, 1), first_name VARCHAR (MAX), last_name VARCHAR (MAX))
Sintaxis para configurar “identity_insert off | en':
SET IDENTITY_INSERT. .
EN
es la tabla con la columna de identidad.
Error 1: establecer identity_insert en OFF
desactivar identidad_insertar persona; insertar en la persona (ID, nombre, apellido) valores (3, 'Sadia