[Обновление: запрос работает, если я жестко закодировал параметры, поэтому он связан с тем, как я добавляю параметры в запрос]
Что касается меня, я не могу понять, в чем здесь проблема.
Вот запрос, передаваемый в хранилище данных:
SELECT * FROM (SELECT TOP ? StartDate, [ID] FROM
(SELECT TOP ? StartDate, [ID] FROM Story
ORDER BY StartDate DESC, [ID] DESC) AS foo
ORDER BY StartDate ASC, [ID] ASC) AS bar
INNER JOIN Story AS t ON bar.ID = t.ID
ORDER BY bar.StartDate DESC, bar.[ID] DESC
Параметры добавляются в следующем порядке:
var pNumToRetrieve = new OleDbParameter("", OleDbType.Integer) {Value = numToGet};
var pResultSet = new OleDbParameter("", OleDbType.Integer) {Value = resultSet};
_cmd.Parameters.Add(pNumToRetrieve);
_cmd.Parameters.Add(pResultSet);
Если я ввожу этот запрос напрямую, он будет работать нормально. Однако при выполнении запроса из ASP.NET я получаю следующую ошибку:
Оператор SELECT содержит зарезервированное слово или имя аргумента, которое написано с ошибкой или отсутствует, или пунктуация неверна.
Что я делаю не так?
Спасибо
Адам