Nous avons récemment rencontré un problème avec l'encodage lié à un champ qui est stocké en tant que varchar (120) dans SQL Server. Dans SSMS, le varchar apparaît comme:
"Qui a tué JonBen‚t?"
Cependant, quand il est introduit en python, il apparaît comme:
J'ai fait des recherches sur le côté Python, et rien d'étrange ne se passe. Ma théorie est que le varchar dans SQL Server accepte les caractères UTF-8 qui s'affichent différemment en python que SSMS. Je ne suis pas très familier avec l'encodage dans SQL Server. Quelqu'un peut-il me faire savoir ce qui suit:
- Existe-t-il un moyen dans SSMS de visualiser l'encodage du varchar? Par exemple, voyez \ x82 au lieu d'afficher la virgule telle qu'elle est actuellement issue de SSMS?
- Nous utilisons SQL Server 2008. Existe-t-il un moyen de changer l'encodage de n'importe quel caractère UTF-8 en caractères ASCII sans utiliser d'outils d'importation / exportation ou de vidage dans un fichier plat? Est-ce que je peux faire cette conversion via une requête?
- Existe-t-il un moyen d'identifier par programme les enregistrements problématiques via une requête (le problème étant défini comme des caractères UTF-8 qui ne sont pas pris en charge via ASCII)?
Merci d'avance!
L' utilisation sp_help N'table_name';
je trouve que la Collation de cette VARCHAR
colonne est: SQL_Latin1_General_CP1_CI_AS
.
sp_help N'table_name';
. Regardez la colonne basée sur "nom", puis regardez la colonne "nom_classement".
VARCHAR
colonne utilise-t-elle?