Pergunta: Quantas chaves estrangeiras se pode colocar em uma tabela?
Recentemente em uma palestra de SQL Server um aluno perguntou ao palestrante, e a resposta foi 253, só que a resposta foi muito curta e sem explicação, resolvi pesquisar um pouco mais em casa e encontrei mais informações que gostaria de compartilhar aqui com vocês.
Resposta: SQL Server 2014 e as versões anteriores, o máximo de quantidade de chaves estrangeiras em uma tabela é de 253, porém essa limitação muda no SQL Server 2016.
Para entender as limitações no SQL Server 2016 precisamos entender dois conceitos importantes.
- Referências de Chave Estrangeira de Saída – Uma coluna em uma tabela referindo-se a outras colunas da tabela.
- Referências de Chave Estrangeira de Entrada – Uma coluna em uma tabela que é referenciada por outras colunas da tabela.
A definição pode ter ficado um tanto confusa, então vou melhorar isso mostrando na imagem abaixo:
Agora que entendemos melhor, vamos voltar a nossa pergunta inicial.
Uma tabela pode fazer referência a um máximo de 253 outras tabelas e colunas como chaves externas (Referências de Chave Estrangeira de Saída). O SQL Server 2016 aumenta o limite para o número de outras tabelas e colunas que podem fazer referência a colunas em uma única tabela (Referências de Chave Estrangeira de Entrada), de 253 para 10.000. No entanto, auto referenciamento FK (onde tabela coluna está referenciando-se na mesma tabela) ainda está limitado a 253 em todas as versões do SQL Server.
Aqui está algumas limitações que encontrei no Books Online
- São suportadas mais de 253 referências FK para operações DELETE e UPDATE DML. Operações MERGE não são suportadas.
- Uma tabela com uma referência FK para si mesmo ainda está limitada a 253 referências de chaves estrangeiras.
- Mais de 253 referências FK não estão disponíveis atualmente para índices de armazenamento de colunas (column store indexes), tabelas com otimização de memória (memory-optimized tables) ou Stretch Database.
Wesley Mota
Latest posts by Wesley Mota (see all)
- Free Blackjack No Download: Appreciate Blackjack Anytime, Anywhere - novembro 25, 2024