AddWithValue без DBType, вызывающий медленный запуск запросов

Я использовал cmd.Parameters.AddWithValue и не определял DBType (int, varchar, ...) для выполнения запросов. После просмотра SQL Profiler кажется, что запросы, выполняемые этим методом, выполняются намного медленнее, чем при указании типа данных.

Чтобы дать вам представление о том, насколько он медленнее, вот пример. Запрос представляет собой простой поиск по одной таблице, а столбец в выражении where индексируется. При указании типа данных определенный запрос выполняется примерно на 0 мс (слишком мал для измерения сервером sql) и требует 41 чтения. Когда я удаляю DBType, это может занять около 200 мс и 10000 операций чтения для завершения запроса.

Я не уверен, что это просто неверный отчет о значениях в SQL Profiler или эти значения действительно правильные, но это воспроизводимо, так как я могу добавить и удалить DBType, и он выдаст значения, данные в SQL Profiler.

Кто-нибудь еще сталкивался с этой проблемой, и простой способ ее исправить. Я понимаю, что могу добавить тип данных во всем коде, но кажется, что нужно добавить много вещей, и если есть более простой способ исправить это, это было бы очень полезно.

[РЕДАКТИРОВАТЬ]

После некоторого начального тестирования (запуска обоих сценариев в цикле) кажется, что значения, которые дает профилировщик, являются точными.

Так же, как добавленная информация, я использую .Net 2.0 на Windows XP Pro и SQL Server 2000 на Windows 2000 для БД.

[ОБНОВИТЬ]

После некоторого копания я смог найти этоСообщение блога, которые могут быть связаны. Кажется, что строковые значения в .Net (так как они в юникоде) автоматически создаются как параметры nvarchar. Мне придется подождать до понедельника, когда я приступлю к работе, чтобы посмотреть, смогу ли я что-то сделать для решения этой проблемы. Тем не менее мне кажется, что мне нужно будет установить тип данных, чего я и пытался избежать.

Эта проблема не появляется при каждом запросе, который я делал, только некоторые из них, поэтому я все же могу просто прибегнуть к установке DBType в запросах с проблемами, но я ищу более обобщенное решение проблемы.

Ответы на вопрос(3)

Ваш ответ на вопрос