Sql Compact edition - простой оператор выбора не работает - PullRequest
0 голосов
/ 24 декабря 2011

У меня есть эта действительно простая проблема, которую я не могу преодолеть.

Я пытаюсь выполнить строки этого кода с помощью sql ce:

SqlCeCommand comSelect = new SqlCeCommand("SELECT * FROM Items WHERE barcode = '@barcode'", conn);
comSelect.Parameters.Add(new SqlCeParameter("barcode", System.Data.SqlDbType.NVarChar, 100)).Value = barC;

По какой-то странной причине - он всегда возвращается пустым, т. Е. Результаты не найдены. Если я сам добавлю значение параметра в строку запроса, например:

SELECT * FROM Items WHERE barcode = '123ABC'

тогда все работает отлично. Я добавлю, что столбец является NVarChar.

Есть идеи, почему это не работает?

Ответы [ 2 ]

6 голосов
/ 24 декабря 2011

попробуй:

new SqlCeCommand("SELECT * FROM Items WHERE barcode = @barcode", conn);
comSelect.Parameters.Add(new SqlCeParameter("@barcode", System.Data.SqlDbType.NVarChar, 100)).Value = barC;
2 голосов
/ 24 декабря 2011

Попробуйте использовать это:

"SELECT * FROM Items WHERE barcode = @barcode"

Вместо того, что у вас есть.Обратите внимание на отсутствие кавычек в @barcode.

...