Quero saber por que devo usar um int como chave primária de uma tabela de pesquisa, em vez de apenas usar o valor de pesquisa como chave primária (que na maioria dos casos seria uma string).
Entendo que usar um nvarchar (50) em vez de um int usaria muito mais espaço se estivesse vinculado a uma tabela com muitos registros.
Por outro lado, usar o valor de pesquisa diretamente basicamente nos pouparia de fazer uma junção. Posso imaginar que isso seria uma grande economia se a junção fosse sempre necessária (estamos trabalhando em um aplicativo da web, então isso conta bastante).
Quais são as vantagens de usar uma chave primária int (especificamente para uma tabela de pesquisa), além de ser "a coisa padrão a fazer"?