Mysql
 sql >> Base de données >  >> RDS >> Mysql

VARCHAR en tant que clé étrangère/clé primaire dans la base de données est-il bon ou mauvais ?

Le problème avec VARCHAR utilisé pour n'importe quelle CLÉ est qu'ils peuvent contenir un ESPACE BLANC. L'espace blanc consiste en N'IMPORTE QUEL caractère non lisible à l'écran, comme les tabulations d'espaces, les retours chariot, etc. L'utilisation d'un VARCHAR comme clé peut vous rendre la vie difficile lorsque vous commencez à rechercher pourquoi les tables ne renvoient pas d'enregistrements avec des espaces supplémentaires à la fin de leurs clés.

Bien sûr, vous POUVEZ utilisez VARCHAR, mais vous devez être très prudent avec l'entrée et la sortie. Ils occupent également plus d'espace et sont probablement plus lents lors d'une requête.

Les types entiers ont une petite liste de 10 caractères valides, 0,1,2,3,4,5,6,7,8,9 . Ils sont une bien meilleure solution à utiliser comme clés.

Vous pouvez toujours utiliser une clé basée sur un nombre entier et utiliser VARCHAR comme valeur UNIQUE si vous souhaitez bénéficier des avantages de recherches plus rapides.