| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Передача параметров в хранимую процедуру |
| Автор: Wilko 29.8.2011, 10:55 | ||
| Как можно передавать параметры в хранимую процедуру для использования с оператором IN? Есть листбокс с возможностью выбора множества значений. Пользователь выбирает ноль или больше значений в этом поле, и этот параметр должен передаваться хранимой процедуре. Процедура вида
Как можно передать параметр Employee в эту хранимую процедуру? |
| Автор: jonie 29.8.2011, 14:06 |
можно: 1. как XML передавать (начиная с MSSQL2005) 2. создать предварительно таблицу (из C#) в этой же сесии с #-ки начинающуюся использовать в SP её (только SP вызывать из той же сессии иначе таблица умрет). 3. передать ID через запятую и в SQL их пропарисить - гугли про "text to table mssql function delimeter" словам. 4. создать UDF и использовать его (изврат наверно) 5. можно передать текстом через запятую, но в SQL тогда использовать динамический sql, который исполнять через EXEC... |
| Автор: Wilko 29.8.2011, 14:11 |
| Видимо забыл добавить, что этот параметр может отсутствовать, т.е. быть NULL(пользователь не выбрал критерия для фильтрации, вывести все записи). Если в других случаях проверки на ISNULL достаточно, то тут такого не пройдет. Только динамический sql подойдет в таком случае? |
| Автор: jonie 29.8.2011, 14:16 | ||
Почему это "только динамический" ?
|
| Автор: Wilko 29.8.2011, 14:37 |
| Спасибо, пока работает |
| Автор: Wilko 30.8.2011, 11:15 | ||||
| Понимаю ,может быть стоило создать новую тему или лучше поискать, но задам вопрос здесь) Эта процедура используется для создания пейджинга, и, конечно же, хотелось бы сразу из нее получать количество строк в резлуьтирующем наборе. Вот только
- не работает, т.к. его можно применить только после всего запроса, а он ограничивает наши записи с помощью @StartRow и @EndRow. Как можно получить количество записей, которые были выбраны в результате вложенного запрос:
И записать их в переменную @PageCount? |