Criar chaves primárias

Você pode definir uma chave primária no SQL Server 2012 usando o SQL Server Management Studio ou o Transact-SQL. Criar uma chave primária cria automaticamente um índice correspondente exclusivo, clusterizado ou não clusterizado.

Neste tópico

  • Antes de começar:

    Limitações e restrições

    Segurança

  • Para criar uma chave primária usando:

    SQL Server Management Studio

    Transact-SQL

Antes de começar

Limitações e restrições

  • Uma tabela pode conter apenas uma restrição PRIMARY KEY.

  • Todas as colunas definidas em uma restrição PRIMARY KEY devem ser definidas como NOT NULL. Se a nulidade não for especificada, todas as colunas participantes de uma restrição FOREIGN KEY devem ter sua nulidade definida como NOT NULL.

Segurança

Permissões

A criação de uma nova tabela com uma chave primária requer a permissão CREATE TABLE no banco de dados e a permissão ALTER no esquema no qual a tabela está sendo criada.

Criar uma chave primária em uma tabela existente requer a permissão ALTER na tabela.

Ícone de seta usado com o link Voltar ao Início[Top]

Usando o SQL Server Management Studio

Para criar uma chave primária

  1. No Pesquisador de Objetos, clique com o botão direito do mouse na tabela à qual você deseja adicionar uma restrição exclusiva e clique em Design.

  2. No Designer de Tabela, clique no seletor de linha para a coluna de banco de dados que você deseja definir como chave primária. Se desejar selecionar colunas múltiplas, digite a tecla CTRL enquanto você clica nos seletores de linha para as outras colunas.

  3. Clique com o botão direito do mouse no seletor de linha para a coluna e selecione Definir Chave Primária.

Observação sobre cuidadosCuidado

Se você quiser redefinir a chave primária, qualquer relação com a chave primária existente deve ser excluída antes que a nova chave primária seja criada. Uma mensagem avisará que as relações existentes serão excluídas automaticamente como parte desse processo.

Uma coluna de chave primária é identificada por um símbolo de chave primária em seu seletor de linha.

Se uma chave primária consistir em mais de uma coluna, serão permitidos valores duplicados em uma coluna, mas cada combinação de valores de todas as colunas na chave primária deve ser única.

Se você definir uma chave combinada, a ordem das colunas na chave primária corresponderá à ordem das colunas, como é mostrado na tabela. Entretanto, você poderá alterar a ordem de colunas depois que a chave primária for criada. Para obter mais informações, consulte Modificar chaves primárias.

Ícone de seta usado com o link Voltar ao Início[Top]

Usando Transact-SQL

Para criar uma chave primária em uma tabela existente

  1. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Executar. O exemplo cria uma chave primária no coluna TransactionID.

    USE AdventureWorks2012;
    GO
    ALTER TABLE Production.TransactionHistoryArchive 
    ADD CONSTRAINT PK_TransactionHistoryArchive_TransactionID PRIMARY KEY CLUSTERED (TransactionID);
    GO
    

Para criar uma chave primária em uma nova tabela

  1. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Executar. O exemplo cria uma tabela e define uma chave primária na coluna TransactionID.

    USE AdventureWorks2012;
    GO
    CREATE TABLE Production.TransactionHistoryArchive1
    (
       TransactionID int NOT NULL,
       CONSTRAINT PK_TransactionHistoryArchive_TransactionID PRIMARY KEY CLUSTERED (TransactionID)
    );
    GO
    

    Para obter mais informações, consulte ALTER TABLE (Transact-SQL), CREATE TABLE (Transact-SQL) e table_constraint (Transact-SQL).

Ícone de seta usado com o link Voltar ao Início[Top]