4
respostas

ERRO ao executar o IDENTITY_INSERT

Mensagem 8106, Nível 16, Estado 1, Linha 108
A tabela 'dim_cliente' não tem a propriedade de identidade. Não é possível executar a operação SET.
Mensagem 110, Nível 15, Estado 1, Linha 111
Existem menos colunas na instrução INSERT do que valores especificados na cláusula VALUES. O número de valores na cláusula VALUES deve corresponder ao número de colunas especificado na instrução INSERT.
Mensagem 8106, Nível 16, Estado 1, Linha 140
A tabela 'dim_cliente' não tem a propriedade de identidade. Não é possível executar a operação SET.

Horário de conclusão: 2023-09-05T15:02:52.2557708-03:00
SET IDENTITY_INSERT dim_cliente ON
GO

INSERT INTO [dbo].[dim_cliente]
           ([id_cliente]
           ,[cod_cliente]
           ,[desc_cliente]
           ,[atr_tamanho_cliente]
           ,[cod_cidade]
           ,[desc_cidade]
           ,[cod_estado]
           ,[desc_estado]
           ,[cod_regiao]
           ,[desc_regiao]
           ,[cod_segmento]
           ,[desc_segmento])
     VALUES
           (0, 
           'ND',
           'ND',
           'ND',
           'ND',
           'ND',
           'ND',
           'ND',
           'ND',
           'ND',
           'ND',
           'ND',
           'ND')
GO

SET IDENTITY_INSERT dim_cliente OFF
GO
4 respostas

inseri normal sem esse set identity

Olá, Gabriel! Como vai?

Vamos analisar cada mensagem que lhe foi retornado ao executar o IDENTITY_INSERT:

  1. A mensagem "A tabela 'dim_cliente' não tem a propriedade de identidade. Não é possível executar a operação SET." sugere que a coluna que você está tentando inserir um valor (neste caso, id_cliente) não é uma coluna de identidade. Verifique se você definiu a coluna 'id_cliente' como uma coluna de identidade na tabela 'dim_cliente'.

  2. A mensagem "Existem menos colunas na instrução INSERT do que valores especificados na cláusula VALUES. O número de valores na cláusula VALUES deve corresponder ao número de colunas especificado na instrução INSERT." indica que o número de colunas na instrução INSERT não corresponde ao número de valores que você está tentando inserir. No seu código, você está tentando inserir 13 valores em 12 colunas. Para corrigir isso, você deve remover um dos valores 'ND' na cláusula VALUES.

Espero ter ajudado. Caso tenha mais problemas ou dúvidas acerca deste tópico, estarei à disposição para lhe ajudar.

Grande abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Boa tarde, Arnaldo!

O meu deu o mesmo erro, porém também deu o erro do "primary key", como está na imagem embaixo.

Primeiro, como eu faço para adicionar a propriedade de identidade à dimensão Cliente? Segundo, se não pode ser 0, o que coloca nesse mesmo comando que o Gabriel enviou?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade Muito obrigado!

Olá, Pedro! Tudo bem?

Notei que você abriu um tópico com a mesma dúvida e essa é uma boa forma de mostrar outras formas que esse problema aparece, que pode ser o seu caso, assim poderá ajudar melhor outros alunos que enfrentarem problemas parecidos. Também percebi que o mesmo já foi respondido.

Você pode checar isso no seguinte tópico: [Dúvida] Ao colar a ação de "insert" na tabela cliente, já vem o "id_cliente"

No mais, bons estudos!