Olá Ahamed,
Diferença entre Atributo e Campo:
1. O campo é comum a todos os registros, enquanto os atributos são para alguns registros específicos e são as principais características de um produto.
2. Os atributos só podem ser de 3 tipos: Texto, Numérico e Numérico Acoplado
3. Os campos são criados na console, mas os atributos estão no modo de Taxonomia do Administrador de Dados.
Acredito que você pode entender facilmente o Ponto 2 e o Ponto 3.
Então, desenvolvendo o Ponto 1: com um exemplo simples:
quando usar um atributo e quando usar um campo.
Digamos que você esteja mantendo os dados mestres de Camisas e Copos em seu repositório.
Para Camisas, você tem 2 atributos: Tamanho e Cor.
Para Copos, você tem 2 atributos: Cor e Material.
Suponha que você crie quatro campos em sua tabela principal como Camisa-Tamanho, Camisa-Cor, Copo-Cor e Copo-Material. Então, neste caso, seus dois campos sempre estarão vazios. Quero dizer que se este registro é para uma camisa, então terá dois campos preenchidos Camisa-Tamanho, Camisa-Cor e dois campos sempre vazios Copo-Cor e Copo-Material, pois este registro não pertence a Copos e vice-versa.
Portanto, como é dito que o Atributo é para registros específicos ou em outras palavras, um atributo é como um campo, mas que se aplica apenas a um
subconjunto dos registros em uma tabela. você deve optar pelo Atributo aqui, já que exatamente dois campos estarão ocupados se for um Copo, quero dizer Cor do Copo e Material do Copo e de forma semelhante para os registros de Camisa.
Você consegue imaginar seu repositório com dois campos sempre vazios levando a problemas de desempenho, já que cada campo para um registro ocupa alguns bytes e estamos criando desnecessariamente dois campos vazios para cada registro que ocupam alguns bytes para cada registro em nosso banco de dados? Então, esse é meu ponto aqui, o Campo é comum a todos os registros, quero dizer que o campo deve ser aquele que tem valor para cada registro. Por exemplo, o Número de Material deve ser um campo, não um atributo.
Obrigado e Cumprimentos,
Mandeep Saini