2013-02-28 9 views
5

Mam problem, kiedy zrobić zapytanie SQL z hebrajskiego:zapytań SQL w języku C# nie obsługują hebrajski

"select ProductName From Products WHERE TypeOfProduct ='מעבד'" 

mam TypeOfProduct zestaw, to mają wartość „מעבד”, ale kwerenda zwraca null.

Jeśli zastąpię hebrajskie słowo w formie liczb lub angielskich słów, wszystko pójdzie dobrze.

Jak używać hebrajskiego w zapytaniach SQL?

+1

Jakiego typu jest twoja kolumna bazy danych? A co z układaniem? – vcsjones

+0

Jak wygląda tabela pod względem zestawiania? Czy możesz poprawnie pobrać dane i wyświetlić je (jeśli pobierzesz wiersz w inny sposób)? –

+0

SQL został zaprojektowany dla łacińskiego zestawu znaków, bardzo prawdopodobne, że natkniesz się na tego rodzaju problem z postaciami, które mieszczą się poza nim. – Amicable

Odpowiedz

12

Należy użyć Unicode za pomocą prefiksu „N” przed ciągiem czyli N „מעבד” w swojej klauzuli WHERE ...

select ProductName From Products WHERE TypeOfProduct = N'מעבד' 

Należy również upewnić się, że kolumna jest typu nvarchar i nie varchar.

Jeśli nie możesz użyć ciągu znaków nvarchar i Unicode, musisz zmienić sortowanie bazy danych z LATIN na HEBREW.

+0

Dziękuję bardzo, bardzo serotowałem i nie znalazłem odpowiedzi, w końcu! Dzięki ! – ShmuelCohen

+1

Cieszę się, że pomogę ... Jeśli pomoże to zaznaczyć odpowiedzi, aby inni mogli zobaczyć – Mortalus

+1

Aby rozwinąć komentarz Mort'a, jeśli chcesz zaakceptować to jako odpowiedź, możesz kliknąć pole wyboru w lewym górnym rogu jego odpowiedzi. –

Powiązane problemy