请问如何把一个DATASET中的2个表做一个自然连接生成一个新表????一定给分!

xrxrxr 2001-12-01 02:24:26
-
...全文
139 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
twkwang 2002-03-08
  • 打赏
  • 举报
回复
我觉行ADO.NET还不如ADO
tianzhong78 2002-01-01
  • 打赏
  • 举报
回复
happy new year
sunxiaoli 2001-12-27
  • 打赏
  • 举报
回复
这么麻烦?
如果10个表同时连接,那还不是没法办了.
还不如用asp方便.用表格爱怎么用就怎么用.一切都在自己的掌握之中.
sunyuzhe 2001-12-21
  • 打赏
  • 举报
回复
gzgz upup
gust99 2001-12-11
  • 打赏
  • 举报
回复
I SEE
acptvb 2001-12-10
  • 打赏
  • 举报
回复
感谢您使用微软产品

您可以这样在使用一个DataGrid显示两个Table的数据:
首先,建立一个Relations并将它添加到DataSet中:
Dim dcCustomerCustID As DataColumn
Dim dcOrdersCustID As DataColumn

dcCustomerCustID = myDataSet.Tables("custTest").Columns("custID")

dcOrdersCustID = myDataSet.Tables("orderTest").Columns("custID")

Dim relCustomerOrders As DataRelation
relCustomerOrders = New DataRelation("CustomerOrders", dcCustomerCustID, dcOrdersCustID)
myDataSet.Relations.Add(relCustomerOrders)

然后,建立新的DataColumn,使用DataColumn的Expression属性得到父表(Parent Talbe)中的值,再将这些DataColumn添加到子表(Child Table)中:
Dim oCustName As DataColumn

oCustName = New DataColumn()

oCustName.DataType = System.Type.GetType("System.String")
oCustName.ColumnName = "custName"
oCustName.Expression = "Parent.custName"

myDataSet.Tables("orderTest").Columns.Add(oCustName)


接着,设定DataView,将DataGrid与子表绑定:
Dim dv As DataView

dv = New DataView(myDataSet.Tables("orderTest"))
DataGrid1.DataSource = dv

这样,就可以使用一个DataGrid显示两个Table中的数据了。
有关DataColumn的Expression属性,请参考MSDN中相应的内容:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDataDataColumnClassExpressionTopic.asp


- 微软全球技术中心 VB开发支持



本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。

为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。
leiwenbin 2001-12-05
  • 打赏
  • 举报
回复
以上回答都是错误的。你的需求是不可能满足的, 我已经再这个问题上投入很多时间,你不用再浪费时间了。dataset 中的每个table 都 是独立的,尽管它可以有relation, 但如果你想在一个datagrid control 中"并列"显示多个table 中的列(不是指层次关系的那种显示),那是不可能的。
你可以做一个公用方法,用来从一个table 向另一个table 中添加列,然后每行每列赋值。table,dataset 的结构是可以任意更改的。
deveT 2001-12-05
  • 打赏
  • 举报
回复
用sql 的select * from table1,table2....... where 条件
试试
netcar 2001-12-01
  • 打赏
  • 举报
回复
只要正确设置DataSet的Relation属性即可。
xrxrxr 2001-12-01
  • 打赏
  • 举报
回复
都可以,只要把2个表连在一起就可以
qianhb 2001-12-01
  • 打赏
  • 举报
回复
怎么连?
将一个表的内容追加到另一个表,还是在新表中包含两个表的字段几数据?
用SQL语言行吗?
如果愿意请跟我联系:qhbfp@21cn.com

1,978

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 其他语言讨论
社区管理员
  • 其他语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧