Prezado (a), Boa tarde!
Poderia me explicar melhor a sintaxe do ADD CONSTRAINT e o porque do uso do CLUSTERED juntamente com o PRIMARY KEY ?
Prezado (a), Boa tarde!
Poderia me explicar melhor a sintaxe do ADD CONSTRAINT e o porque do uso do CLUSTERED juntamente com o PRIMARY KEY ?
Oi, Marcus! Tudo certo?
A expressão ADD CONSTRAINT
é usada para adicionar uma restrição a uma tabela. No contexto de banco de dados, as restrições representam regras ou condições que são aplicadas a uma ou mais colunas de uma tabela para garantir a integridade dos dados.
Sabendo disso, quando usamos ADD CONSTRAINT
na criação da chave primária (primary key ou PK), estamos definindo uma regra sobre a coluna CPF
, cujo nome será PK_TABELA_CLIENTE
. A partir daqui, a coluna CPF
terá algumas condições de chave primária a serem seguidas, como não permitir repetições e dados nulos.
Além disso, Marcus, o termo CLUSTERED
é utilizado juntamente à PRIMARY KEY
para especificar o tipo de índice que será criado para a chave primária. Nesse caso, como usamos apenas a palavra "clustered", será definido um índice clusterizado sobre a coluna CPF
. Esse tipo de índice é bem bacana, já que organiza fisicamente os dados da tabela com base na chave primária, o que pode melhorar o desempenho das consultas que usam essa PK.
Caso tenha curiosidade em saber um pouco mais sobre índices clusterizados, recomendo a leitura do material abaixo:
Espero ter ajudado, Marcus! Fico à disposição caso novas dúvidas apareçam.
Até mais!
Primeiro gostaria de agradecer a explicação, foi muito boa. Diante disso gostaria de fazer uma nova pergunta, isso significa que a tabela estará, por exemplo, organizada na forma crescente considerando a coluna de CPF?
Oi, Marcus!
Isso mesmo! Quando uma chave primária é definida como clusterizada, os dados na tabela são organizados fisicamente com base na ordem dos valores da chave primária. Contudo, vale dizer que essa organização ocorre internamente (no disco rígido onde os dados são armazenados) e geralmente não aparece para nós, visualmente, no retorno das consultas.
Abraços, Marcus.