У меня проблема с запросом sql. По запросу я пытаюсь найти базу данных для любых вхождений строки (может быть что угодно) в столбце, используя команду SQL LIKE. Проблема в том, что он отлично работает для большинства строк: john, jim, ji "m, но не работает, когда я включаю следующие символы, которые (', {,} и один кавычек). заботиться об этих особых случаях, помещая их в блок [] всякий раз, когда пользователь вводит их.
Но я получаю следующую ошибку, когда я обращаюсь к базе данных с помощью GetSelectCommand() в VB.NET
Сведения об исключении:
System.ApplicationException:
Количество предоставленные значения должны быть равны количество заполнителей в запросе.
Я проверил запрос снова и снова.. но его штраф.
Мой сервер базы данных - Sql Server 2008.
Итак, мое приложение выдает исключение в этой команде:
Using reader As MustDisposeDataReader = _
pmSystem.DatabaseManager.GetSelectCommand(selectStatementBuilder.ToString(), New Object() {})
Где MustDisposeDataReader
- это экземпляр класса во внутренней библиотеке, которая наследуется от System.Object
. pmSystem
- это экземпляр класса PlanManagerSystem
, который реализует командный слой. GetSelectCommand()
принимает команду выбора
Ваши одиночные кавычки, вероятно, неверно отформатированы. Поскольку он говорит, что количество значений неверно, похоже, что ваши одиночные кавычки отключены.