Параметризованный SQL-запрос не возвращает данные;непараметрический запрос возвращает правильные значения - PullRequest
0 голосов
/ 26 октября 2018

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

var queryString1 = "SELECT * FROM Product_Table WHERE CustomerInvoice='@custInvSel';";
        SqlCommand comm1 = new SqlCommand(queryString1, conn);
        comm1.Parameters.AddWithValue("@custInvSel", customerInvoiceSelected);

Как правило, приведенный выше код не возвращает никаких данных, несмотря на наличие данных. Когда код читает

var queryString1 = "SELECT * FROM Product_Table WHERE CustomerInvoice='"+customerInvoiceSelected+"';";
        SqlCommand comm1 = new SqlCommand(queryString1, conn);

Все отлично работает. Ни в одном случае не было ошибок, что поставило меня в тупик. Похоже, что с параметрами запрос все смешивает.

Запрос выполняется в обоих случаях одинаково.

Любая помощь или опыт будут с благодарностью. Спасибо за ваше время!

1 Ответ

0 голосов
/ 26 октября 2018
CustomerInvoice='@custInvSel';";

должно быть

CustomerInvoice=@custInvSel";

при параметризации, вы не добавляете кавычки в строку и т. Д. Вы просто отправляете необработанные данные.И не добавляйте точку с запятой.

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