кодировка текста в .net - PullRequest
       14

кодировка текста в .net

0 голосов
/ 17 января 2011

Я импортирую термины из БД, которые содержат иностранные символы всех видов. Когда у меня есть японские символы или китайский язык, я не могу запустить оператор обновления для таблицы, поскольку он не может соответствовать условиям;

sqlUpdate = "Update QueryData set LastSearchDate ='" & DateTime.Now.ToString & "'" & " 

where QueryTerms = '" & item & "'"

элемент - это условия поиска, и он отлично работает для всех остальных символов, кроме случаев, когда он японский. Теперь, если бы я сделал это в SQL Server 2005, мне пришлось бы поставить N перед термином, чтобы найти совпадение.

select * from QueryData where queryTerms =N'だしの素'

Есть ли способ проверить кодировку строк в .net, чтобы я мог затем кодировать ее перед выполнением запроса или есть эквивалент N в .net должен быть более простой способ справиться с этим.

1 Ответ

2 голосов
/ 17 января 2011

Вполне возможно, что использование здесь параметризованных запросов просто решит вашу проблему, а также не будет уязвимым для атак с использованием SQL-инъекций. Держите ваши данные (значение запроса) подальше от вашего кода (SQL) - таким образом вам не нужно представлять все как строку, что позволяет избежать всевозможных проблем.

См. Документацию по SqlCommand.Parameters для примера использования параметризованных запросов.

...