ПРОБЛЕМА ВЫПОЛНЕНИЯ запроса в vb - PullRequest
0 голосов
/ 13 августа 2010

У меня проблема с SQL-запросом. Через запрос я пытаюсь найти в базе данных любые вхождения строки (может быть что угодно) в столбце с помощью команды SQL LIKE. Проблема в том, что он работает нормально для большинства строк, таких как john, jim, ji "m, но не работает, когда я включаю следующие символы (', {,} и одну кавычку). Запрос MYSQL занимает заботиться об этих особых случаях, помещая их в блок [] всякий раз, когда пользователь вводит их.

Но я получаю следующую ошибку при запросе базы данных с помощью GetSelectCommand () в VB.NET

Информация об исключении: Тип исключения: System.Reflection.TargetInvocationException Сообщение об исключении: Исключение было сгенерировано целью вызова.

Внутренняя информация об исключениях (уровень 1): Тип исключения: System.ApplicationException Сообщение об исключении: Количество предоставленных значений должно быть равно количеству заполнителей в запросе.

Я проверял запрос снова и снова ... но это нормально.

Мой сервер базы данных - Sql Server 2008.

Итак, мое приложение выдает исключение в этой команде:

Использование читателя As MustDisposeDataReader = pmSystem.DatabaseManager.GetSelectCommand (selectStatementBuilder.ToString (), New Object () {})

Где MustDisposeDataReader - это экземпляр класса во внутренне разработанной библиотеке, который наследуется от System.Object. pmSystem является экземпляром класса PlanManagerSystem, который реализует уровень команд. GetSelectCommand () принимает команду выбора

Может кто-нибудь сказать мне, что делать ???

Ответы [ 2 ]

1 голос
/ 13 августа 2010

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

0 голосов
/ 13 августа 2010

Есть много способов сделать это.Где ваш запрос?Это в объекте источника данных, объекте sqlcommand в коде позади, где-то еще?

В любом случае, выполните поиск в Google по запросу «параметр» + источник данных (или «параметр» + команда sql и т.д.)и вы придумаете тонну практических рекомендаций.MSDN, VB Help и т. Д. Также являются хорошими местами для поиска.Если вы попытаетесь, но все еще не можете найти ответ, вернитесь и спросите снова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...