Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Posso usar VARCHAR como CHAVE PRIMÁRIA?


Claro que pode, no sentido de que seu RDBMS permitirá que você faça isso. A resposta para uma pergunta sobre se você deve fazer é diferente, porém:na maioria das situações, valores que têm um significado fora do seu sistema de banco de dados não ser escolhido para ser uma chave primária.

Se você souber que o valor é exclusivo no sistema que está modelando, é apropriado incluir um índice exclusivo ou uma restrição exclusiva em sua tabela. No entanto, sua chave primária geralmente deve ser algum valor "sem sentido", como um número incrementado automaticamente ou um GUID.

A razão para isso é simples:erros de entrada de dados e mudanças infrequentes em coisas que parecem não mutáveis ​​acontecem. Eles se tornam muito mais difíceis de corrigir em valores que são usados ​​como chaves primárias.