получать несколько наборов данных в одном запросе? - PullRequest
0 голосов
/ 06 января 2011

Я работаю над сайтом, на котором при входе пользователя в систему (первый запрос к базе данных) хранимая процедура изменяет пароль и идентификатор пользователя, а затем возвращает запись пользователя, которую я поместил в сеанс для использования в следующем.

После этого я делаю второй запрос БД. он возвращает адреса пользователя, которые я положил в кеш.

Можете ли вы, пожалуйста, подсказать мне, есть ли какой-то способ, которым я могу получить оба набора данных (запись пользователя и его адрес из 2-й таблицы) в одной базе данных запросов.

Пожалуйста, помогите мне, я использую DAAB (введите призовую библиотеку) для доступа к данным.

Спасибо

Ответы [ 3 ]

1 голос
/ 06 января 2011

Измените ваш SP, который имеет несколько операторов выбора, как в вашем случае 2. Два оператора выбора в одном SP вернут два набора записей. Убедитесь, что в SQL Management Studio при запуске SP на нижней панели должно отображаться несколько таблиц.

Как только ваш SP будет готов, вызовите SP из кода C # и загрузите результат в DataSet. Набор данных будет иметь две таблицы, и вы можете получить данные из другой таблицы

1 голос
/ 06 января 2011

Вы можете написать два запроса на выборку в хранимой процедуре или выполнить два запроса один за другим.В одном запросе вы можете выполнить и получить данные в DataSet.

ExecuteDataset ()

Таким образом, две таблицы будут возвращены внутри набора данныхВы можете получить такие значения, как

dataset.tables (0) dataset.tables (1)

Спасибо

0 голосов
/ 06 января 2011

Вы ничего не получите от извлечения двух наборов результатов за один раз, но код станет более непоследовательным. Зачем вам нужно объединять две логически отдельные операции в одну? Вместо использования таких сомнительных методов вы можете использовать объединение, чтобы получить один набор результатов, который содержит все данные за один раз, но все же это кажется неправильным. Я не вижу четкого способа сделать то, что вы просите, и каких-либо выгод, которые могут быть получены.

...