2009-01-21 10 views
7

Ich modifizierte eine der Apps, die ich für den russischen Markt gemacht habe. Alles schien in Ordnung, es gab ein Problem bei der Eingabe von Daten in die Datenbank, aber es wurde gelöst, indem die Seitencodierung auf utf-8 gesetzt wurde. Das Einfügen und Abrufen funktioniert also gut. Ich bin auf Probleme gestoßen, ich habe einfach keine Ahnung, wie ich damit umgehen soll. Wenn ich folgende Abfrage ausgeführt (vereinfacht) in mssql Query Analyzer (so dass keine Chance, es habe im Code verkorkste), erhalte ich noch keine Ergebnisse dachte, dass es eine Reihe von Aufzeichnungen Anpassung sind: (MySQL-Version ist 2005)kyrillische Suche

SELECT * 
FROM institutions 
WHERE city LIKE '%Москва%' 
ORDER BY address1 

auch wenn ich ändern, es zu sein:

SELECT * 
FROM institutions 
WHERE city='Москва' 
ORDER BY address1 

oder eine andere Variation, funktioniert es einfach nicht. Frage ist warum?

P.S. Falls Sie nach dem Abschicken keine kyrillischen Buchstaben sehen können, sucht es nach Moskau als Stadt.

Jeder hat eine Lösung oder Idee, was zu tun ist?

Antwort

21

OK gerade gefunden Antwort und es ist lahm :) ein wenig. Sie müssen N vor der Unicode-Zeichenfolge hinzufügen.

SELECT * FROM institutions WHERE city LIKE N'%Москва%' ORDER BY address1 

Ich werde dies verlassen, falls jemand anderes damit stecken bleiben sollte.

3

Das N weist SQL Server darauf hin, dass es Unicode nicht

ist
Verwandte Themen