web-dev-qa-db-fra.com

DataType MySQL pour le nom d'utilisateur de 15 caractères maximum

J'ai actuellement une base de données avec la table "utilisateur" ayant le nom d'utilisateur comme l'une des colonnes.

J'autorise un maximum de 15 caractères pour le nom d'utilisateur dans mon système. Est-il bien d'avoir la colonne Nom d'utilisateur en tant que DataType Varcharchar (15)?

6
user27841

La meilleure façon de stocker toute chaîne de longueur courte en texte brut est d'utiliser le type de données varchar, définissant la longueur maximale à 15, uniquement à des fins d'intégrité. La longueur du nom d'utilisateur doit évidemment être validée dans l'application.

La seule chose à garder à l'esprit serait la chartte de la base de données, de la table et de la colonne. Assurez-vous que vous utilisez un charert qui couvre tous les caractères attendus du nom d'utilisateur, dans n'importe quelle langue humaine à laquelle ils sont insérés dans.

2
Libbux

Vous devez choisir CHAR(15) au lieu de VARCHAR(15).

Veuillez consulter le lien Quel est l'impact sur la performance de l'utilisation de Char VS Varchar sur un champ de taille fixe? Vous obtiendrez pourquoi choisir CHAR(15).

1
Abdul Manaf

Oui, vous pouvez utiliser Varcharchar (15) DataType pour stocker le nom d'utilisateur.

varchar stocke la chaîne de caractères de longueur variable. Cela peut nécessiter moins de stockage que les types de longueur fixe car il n'utilise que autant d'espace que nécessaire.

Varcharchar (15) attribue en réalité une allocation de manière dynamique jusqu'à 16 octets, jusqu'à 15 pour les données et, au moins, 1 octet supplémentaire pour stocker la longueur de la Les données.

Si vous envisagez d'indexer, vous pouvez utiliser la fonction de recherche de texte intégral dans cette colonne Nom d'utilisateur Varcharchar (15).

recherche en texte intégral

0
Rathish