我有两张表,如下所示-
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#中,我首先连接到数据库,然后根据modelno和eqno获取表2中的字段where子句。
例如
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我想首先从表1中获取modelno = '1‘的所有列,然后在上面的步骤中获取每个行,然后从table2中获取行。示例从table1获取行后,我们得到2行。然后,对于使用modelid和eqno组合读取的第一行,从table2获取记录。
在C#中有没有办法只连接到数据库一次并获取table1和table2信息?我不想两次连接到数据库,首先是为了获取table1,然后是为了获取table2。
发布于 2011-08-26 07:06:24
在SQL查询中使用联接来执行以下操作:
SELECT * FROM Table1 as t1
LEFT JOIN Table2 as t2
ON t1.ModelNo = t2.ModelNo这将根据匹配的ModelNo为表1和表2的每个组合返回一行
发布于 2011-08-27 20:21:29
我想你可以从两个表中检索数据。在http://msdn.microsoft.com/en-us/library/ms378758(v=SQL.100).aspx中有多个结果集概念。
这样,您就不需要连接表了。
https://stackoverflow.com/questions/7198203
复制相似问题