Espace vide à la fin des résultats de la requête SQL Server
-
26-09-2019 - |
Question
Je viens d'installer Microsoft SQL Server 2008 R2 pour tester avec LINQ à SQL.
J'ai une table avec une colonne de type NCHAR (20) et deux lignes: «123» et «test».
Si je demande toutes les lignes de ce tableau et enveloppe chaque valeur avec "'" Je reçois ce qui suit:
'123 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' ( _ is a space)
'Test _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' ( _ is a space)
SQL Server semble remplir l'espace inutilisé (car la colonne est un NCHE de 20 octets) avec des espaces.
Que puis-je faire pour éviter que cela ne se produise?
La solution
Utilisez nvarchar au lieu de NCHAR. NCHAR est un champ de largeur fixe rempli d'espaces, comme vous le voyez.
Autres conseils
Changer le type de colonne en nvarchar
.
Voir NCHAR et NVARCHAR.
vous avez besoin nvarchar
, c'est flexible.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow