La columna de claus primàries sovint es defineix com a increment automàtic quan es construeix una base de dades de SQL Server. El límit d'IDENTITAT està activat per a la columna de clau principal per fer-ho. La ubicació inicial i el pas de l'increment es transfereixen a la columna IDENTITAT com a paràmetres. A continuació, cada vegada que s'afegeix un nou registre i la inserció d'identitat es defineix a OFF, el valor de la columna IDENTITAT augmenta en el pas predefinit normalment un número. A més, la propietat IDENTITY INSERT està activada només per a una taula en una sola sessió.
En aquest article, analitzarem l’error 'No es pot inserir un valor explícit per a la columna d'identitat a la taula Desactivació de la funció 'INSERT D'IDENTITAT' i inserció de dades sense 'ID DE CLAU PRIMÀRIA' a la instrucció insert L'error es produeix quan l'usuari ha definit 'identitat_insert' a 'DESACTIVAT'. A continuació, intenta inserir dades explícitament a la columna de clau principal de la taula. Això es pot explicar mitjançant l'exemple següent. En primer lloc, creeu una base de dades anomenada 'appuals'. Creació d’una base de dades anomenada “appuals”. Creeu una taula anomenada 'persona' mitjançant el codi següent. Taula construïda mitjançant un 'IDENTITAT CLAU PRIMÀRIA' Creació d'una taula anomenada 'persona' El “Set identity_insert off | encès ” ens ajudarà a resoldre aquest error. La sintaxi correcta per a aquesta sentència és la següent. Mentre que el primer argument és el nom de la base de dades on es troba la taula. El segon argument que es mostra és l’esquema al qual pertany aquella taula amb un valor d’identitat que s’ha d’establir ACTIVAT o bé DESACTIVAT . El tercer argument Hi ha fonamentalment dues formes diferents d’inserció de dades a la taula sense error. Es consideren la solució a aquest error i es descriuen a continuació. En el primer cas, inserirem dades a la taula amb el fitxer 'INSERT D'IDENTITAT' ajustat a 'DESACTIVAT' . Per tant, si l’identificador està present a la sentència INSERT, obtindreu l’error 'No es pot inserir un valor explícit per a la columna d'identitat a la taula' persona 'quan IDENTITY_INSERT està establert a OFF'. Executeu el codi següent a la pestanya de consulta.quan IDENTITY_INSERT està configurat a OFF ' com es mostra a continuació.
Creació de bases de dades i taules:
CREA TABLE persona (ID INT IDENTITY (1, 1), first_name VARCHAR (MAX), last_name VARCHAR (MAX))
Sintaxi per definir 'identity_insert off | activat ”:
SET IDENTITY_INSERT. .
ACTIVAT
és la taula amb la columna d'identitat.
Error 1: definiu OFF_insert_identitat
desactiva la persona insert_identity; inseriu els valors de persona (identificador, nom, cognom) (3, 'Sadia