2013-02-28 8 views
5

Ho un problema quando faccio una query SQL con l'ebraico:query SQL in C# non supporta l'ebraico

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

ho TypeOfProduct set, che sono il valore 'מעבד', ma la query restituisce null.

Se sostituisco la parola ebraica in qualcosa come numeri o parole inglesi, tutto va bene.

Come utilizzare l'ebraico nelle query SQL?

+1

Che tipo è la colonna del database? Che dire della collation? – vcsjones

+0

Che aspetto ha la tabella in termini di regole di confronto? Puoi recuperare i dati correttamente e visualizzarli (se recuperi la riga in qualche altro modo)? –

+0

SQL è stato progettato per il set di caratteri latini, è molto probabile che si verifichi questo tipo di problema con personaggi che cadono ben al di fuori di esso. – Amicable

risposta

12

Si dovrebbe usare Unicode utilizzando il prefisso "N" prima della stringa cioè N 'מעבד' in cui la clausola ...

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

È inoltre necessario assicurarsi che la colonna è di tipo nvarchar e non varchar.

Se non è possibile utilizzare la stringa nvarchar e Unicode, è necessario modificare le regole di confronto del database da LATIN a HEBREW.

+0

Grazie mille, ho fatto serenamente e non ho trovato risposta, finalmente! Grazie ! – ShmuelCohen

+1

Felice di aiutare ... Se questo aiuta a segnare le risposte in modo che gli altri possano vedere – Mortalus

+1

Solo per espandere il commento di Mort, se si desidera accettarlo come risposta è possibile fare clic sulla casella di controllo nell'angolo in alto a sinistra della sua risposta. –