none
Significado deste SQL RRS feed

  • Pergunta

  • Sou novato em SQL Server e gostaria de saber o que significa isto:

    Codigo INT IDENTITY(1,1) PRIMARY KEY

    entendo que é do tipo inteiro e é chave primária, mas o IDENTITY(1,1) não entendi

    obrigado.

    segunda-feira, 21 de maio de 2012 02:24

Respostas

  • HawkB,

          Boa noite, esse fragmento de código faz parte normalmente de um comando CREATE TABLE e significa exatamente o que vocë comentou com o detalhe da autonumeração:

        Campo Codigo, do tipo inteiro com autonumeração (IDENTITY) iniciando em 1 e sendo acrescido de 1 em 1 e que também é uma chave primária.

         A propriedade IDENTITY pode ser configurada da forma que foi mais adequada à sua necessidade, se ela fosse por exemplo IDENTITY(5, 2) os códigos ao serem inseridos na sua tabela iniciariam em 5 e seriam acrescidos de 2 em 2, isso significaria que sua tabela teria os códigos 5, 7, 9, 11,13,15 e assim por diante.

         Note que numa tabela que possui a propriedade IDENTITY você (normalmente) não atribui os valores deste campo manualmente, mas eles são inseridos automaticamente. Por exemplo, para fazer um insert nessa tabela, digamos que você tenha também o campo Nome varchar(50), o insert seria algo semelhante a isso:

        INSERT INTO TABELA (NOME) VALUES ('Antonio da Silva')

         O campo código seria automaticamente calculado e inserido na sua tabela. Se você fizesse um select apareceria, por exemplo Codigo 1, Nome Antonio da Silva.

         Veja mais informações sobre esse assunto no Books Online.

         Espero ter ajudado.


    Roberto Fonseca MCT / MCITP - Database Administrator 2008 MCITP - Database Developer 2008 MCITP - Business Intelligence 2008

    • Marcado como Resposta Hawk B segunda-feira, 21 de maio de 2012 03:13
    segunda-feira, 21 de maio de 2012 02:57
    Moderador