В C # как подключиться, чтобы получить две таблицы без подключения к базе данных дважды - PullRequest
1 голос
/ 26 августа 2011

У меня есть 2 таблицы следующим образом -

table 1 -  modelno, eqno, modeldet, modelcolor,...etc
table 2 - modelno, eqno, partno, modelinfo1, modeldet, modelplace....etc

in table 1 modelno and eqno is composite key
in table 2 modelno, eqno and partno are composite primary key.

В C # - я сначала установил соединение с базой данных, я выбираю поля таблицы 1, где предложение основано на модельно, затем я должен получить поля таблицы 2, где предложениена основе modelno и eqno.

Например,

table 1 -  modelno, eqno, modeldet, modelcolor
           1        1     redblue   red
           1        2     greenblue pink
           2        2     eeee      eeee 

table 2 - modelno, eqno, partno, modelinfo1, modeldet, modelplace
          1        1     1       ghhh         sss      ffff
          1        1     2       ffff         eee      rrrr
          2        1     1       dddd         ddd      dddd

Я хочу сначала выбрать все столбцы с modelno = '1' из таблицы 1., а затем строку foreach, выбранную на предыдущем шаге, получитьстроки из таблицы2.Например, после выборки строк из таблицы1 мы получаем 2 строки.затем для первой строки, извлеченной с помощью комбинации modelid и eqno, получить записи из таблицы 2.

Есть ли в C # способ подключиться к базе данных только один раз и получить информацию о таблицах1 и таблицах ???Я не хочу дважды подключаться к базе данных, чтобы сначала получить table1, а затем - table2.

Ответы [ 2 ]

3 голосов
/ 26 августа 2011

Используйте JOIN в вашем SQL-запросе, чтобы сделать это:

SELECT * FROM Table1 as t1
LEFT JOIN Table2 as t2
ON t1.ModelNo = t2.ModelNo

Это вернет строку для каждой комбинации Таблицы 1 и Таблицы 2 на основе соответствующего ModelNo

1 голос
/ 27 августа 2011

Думаю, что вы умеете получать данные из обеих таблиц.Существует концепция множественного набора результатов на http://msdn.microsoft.com/en-us/library/ms378758(v=SQL.100).aspx.

Таким образом, вам не нужно объединять таблицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...