Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как загрузить в DataSet все таблицы БД... 
:(
    Опции темы
FatherFrost
Дата 23.1.2006, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Почетный Мороз
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 27.4.2005
Где: Крайний север

Репутация: нет
Всего: 6



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


--------------------
Задаю много глупых вопросов....
PM MAIL ICQ   Вверх
HalkaR
Дата 23.1.2006, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пуфыстый назгул
****


Профиль
Группа: Экс. модератор
Сообщений: 2132
Регистрация: 8.12.2002
Где: В Москве

Репутация: нет
Всего: 42



Нескольк раз создаешь датадаптер с новым запросом и делаешь fill датасета.
PM MAIL   Вверх
FatherFrost
Дата 23.1.2006, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Почетный Мороз
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 27.4.2005
Где: Крайний север

Репутация: нет
Всего: 6



Блин... Как-то некрасиво... А если использовать запрос по нескольким таблицам без всяких ограничений???
Добавлено @ 15:52
В рамках данного вопроса столкнулся с проблемой как лучше работать со связанными таблицами. Я ведь могу их связать в рамках запроса для создания дата адптера, а могу потом в рамках дата сета связать таблицы... Посоветуйте, какой из этих вариантов более рациональный и правильный...


--------------------
Задаю много глупых вопросов....
PM MAIL ICQ   Вверх
-ser-
Дата 24.1.2006, 10:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 1.2.2005

Репутация: 4
Всего: 13



Цитата
Никак не пойму как загрузить данные из всех таблиц в датасет

изначально глупейшая идея во всех отношениях.

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

Цитата

SqlDataAdapter указывается запрос на выборку из одной таблицы...
там указывается стандартный Sql запрос. связывай сколько захочешь.




--------------------
"Тонкая, однако, работа." 
PM MAIL ICQ   Вверх
arilou
Дата 24.1.2006, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 4
Всего: 61



Цитата(HalkaR @ 23.1.2006, 15:26 Найти цитируемый пост)

Нескольк раз создаешь датадаптер с новым запросом и делаешь fill датасета.

В случае SQL Server можно сделать запрос вот так:

Код

select * from table1;
select * from table2;
select * from table3;


И выполнить DataAdapter.Fill(DataSet).

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


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
FatherFrost
Дата 24.1.2006, 14:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Почетный Мороз
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 27.4.2005
Где: Крайний север

Репутация: нет
Всего: 6



-ser- Я спрашивал только с точки зрения научного интереса....
А так я начал работать с БД, как ты и говоришь (т.е. селект по нескольким таблицам)

Большое спасибо за советы и разъяснения...


--------------------
Задаю много глупых вопросов....
PM MAIL ICQ   Вверх
bas
Дата 24.1.2006, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 446
Регистрация: 14.8.2002
Где: Молдова, Кишинев

Репутация: нет
Всего: 2



Цитата(arilou @ 24.1.2006, 11:32 Найти цитируемый пост)

И выполнить DataAdapter.Fill(DataSet).

Только если структуры одинаковые
Цитата(FatherFrost @ 24.1.2006, 14:33 Найти цитируемый пост)

как ты и говоришь (т.е. селект по нескольким таблицам)

Основы SQL не мещает изучит (
Код

union ,join ....
)
PM MAIL   Вверх
arilou
Дата 24.1.2006, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 4
Всего: 61



Цитата(bas @ 24.1.2006, 15:14 Найти цитируемый пост)

Только если структуры одинаковые

Не понял, причем тут union и join? Вопрос о том, как заполнить DATASET данными из нескольких таблиц, а не объединить выборки из нескольких таблиц в одну.
Добавлено @ 16:28
FatherFrost
Таков был твой вопрос?


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
FatherFrost
Дата 25.1.2006, 09:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Почетный Мороз
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 27.4.2005
Где: Крайний север

Репутация: нет
Всего: 6



bas Во первых конструкция JOIN (INNER, LEFT, RIGHT) является частью селекта.... Во вторых твои комментариии как-то несовсе м в тему smile Да и UNION используется также с селектом... А фраза селект по нескольким таблицам не обязательно подразумевает указание связи на уровне условий отбора... Хотя данный метод широко применяется в легковесных СУБД (MySQL до 4 версии)

arilou В принципе ты прав. Хотя второе меня также интересовало.


--------------------
Задаю много глупых вопросов....
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0481 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.