2010-11-23 4 views
6

J'essaie d'exécuter une requête avec des caractères Unicode. J'ai été en mesure d'exécuter la requête d'égalité normale en ajoutant N à la requête (par exemple: ..... WHERE column=N'exact_stringâ'). Mais cela ne semble pas fonctionner quand j'essaie d'utiliser LIKE. Des idées sur la façon de faire fonctionner cela?Comment utiliser l'instruction 'LIKE' avec des chaînes Unicode?

Exemple de requête: SELECT * FROM t_sample WHERE t_column LIKE N'%â%'

Aussi comment puis-je savoir quel codage ne l'utilisation de SQL Server pour stocker le type de données nvarchar ou nchar et quel encodage utilise pour afficher la requête dans l'éditeur SQL?

EDIT: Mon mauvais. Cela fonctionne réellement. J'ai essayé d'exécuter la requête dans une mauvaise fenêtre. Mais l'avantage de cela est que j'ai appris sur les paramètres de classement dans SQL Server.

+2

dépend de votre collation mise en –

+0

Merci Mitch. Où puis-je vérifier ce paramètre pour l'instance en cours? – rkg

+2

Votre classement est par colonne, par table, par base de données (en utilisant l'héritage sauf indication contraire). Si vous faites un 'sp_help' vous devriez voir quel est le classement sur les colonnes. –

Répondre

2

Assurez-vous que le classement sur votre table prend en charge unicode.

4

Utilisez une chaîne de recherche Unicode:

WHERE CONTRACTORNAME LIKE N'%ạ%' 

Credit

Questions connexes