Só existe uma maneira de inserir um valor previamente definido em um campo de identidade do SQL Server , e é através do uso de " inserção de identidade . " SQL Server gera um valor em um campo de identidade , quando um registro é criado , em seguida, defende que o valor da atualização. Mas quando é necessário copiar dados entre tabelas, ou declarar explicitamente um valor ao criar novos dados, usando o " insert identidade definida " antes e depois da inserção deixará de lado essas restrições por tempo suficiente para completar a tarefa. Instruções
1
Log no SQL Server através da interface SQL , e certifique- se de que o banco de dados correto é referenciado.
2
Crie a instrução SQL insert. Ao realizar uma inserção de identidade , um asterisco não podem ser usados para representar os domínios , devem ser especificados . No exemplo a seguir , "id" é o campo de identidade
de uma tabela para outra : .
Inserir na tabela 1 (id, descrição, tipo) select id , descrição, tipo de tabela2
explicitamente declarando um valor :
inserir na tabela 1 (id, descrição, tipo ) VALUES ( 1 , 'Test Descrição ', ' tipo A ' ),
3
Set inserção de identidade para a tabela de destino 'on' , digitando: . definir tabela1 identity_insert em
4
Execute a instrução de inserção SQL criado no passo 2
5
definir inserção de identidade para a tabela de destino 'off' , digitando : set identity_insert tabela1 off