这个问题 困惑了我很久 关于dataview的搜索问题

isage2002 2004-07-20 10:17:21
存在一个dataview名为DView1对应的DataTabale是DTb1,
内有主键Id,以及ColA,ColB两列
ColA,ColB数据不唯一,DView1中sort属性引用列ColA。
程序中需要按照ColB进行搜索,如何才能查找到DView1的行

在解决方案中,应该考虑执行效率,否则,呵呵 我就轮循查找了

分不够再添,还有意外惊喜奥~~~~~~~~~~~~~
...全文
165 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
isage2002 2004-07-20
  • 打赏
  • 举报
回复
难道只能在DaTaview中轮循,找到查找到的Id所对应的DataView的索引?
AntingZ 2004-07-20
  • 打赏
  • 举报
回复
要定位,需要通过主键才能定位,否则那么多重复的,到底定位到哪个呢
isage2002 2004-07-20
  • 打赏
  • 举报
回复
也就是说 你所得到的数据,如何和DView1联系起来
isage2002 2004-07-20
  • 打赏
  • 举报
回复
我理解AntingZ(夕惕若) 的意思,可以得到Id,可问题是在以Sort="ColA"的View中 如何定位,或者说如何得到View中的索引
AntingZ 2004-07-20
  • 打赏
  • 举报
回复
返回记录集
AntingZ 2004-07-20
  • 打赏
  • 举报
回复
还可以这样,查找编号大于100的姓张的人:
t.select(" id >100 and 姓名 like '张%' ")
AntingZ 2004-07-20
  • 打赏
  • 举报
回复
t=ds.tables(0)
t.select("姓名='张三')
isage2002 2004-07-20
  • 打赏
  • 举报
回复
DataView.FindRows,但是得到的DataRowView 无法在 DaTaview中定位
水如烟 2004-07-20
  • 打赏
  • 举报
回复
那样返回的只是一个子集,再在子集中找另一个是快了
isage2002 2004-07-20
  • 打赏
  • 举报
回复
这么说吧 一个人员信息表Dview1,按照人员编号Sort,现在需要检索叫做“张三”的人,如何操作
水如烟 2004-07-20
  • 打赏
  • 举报
回复
为什么不用DataView.FindRows呢
isage2002 2004-07-20
  • 打赏
  • 举报
回复
DatAview.Sort="ColA"
dim i as integer = DataView.find("Value1")
这就是怎么查找!
isage2002 2004-07-20
  • 打赏
  • 举报
回复
查了一些资料,类似做法是从新建立一个DataView 依照ColB进行Sort,查找到数据后,得出ColA的值,再通过第一个DatAview查找。但是ColB and ColA 并不唯一
AntingZ 2004-07-20
  • 打赏
  • 举报
回复
怎样个查找法?
是这样查找Colb='cctv'的 记录吗
isage2002 2004-07-20
  • 打赏
  • 举报
回复
呵呵 按照谁排序,这并不是速度和效率的问题,而是客户的需求。按照ColA排序,但需要依照ColB进行查找。
AntingZ 2004-07-20
  • 打赏
  • 举报
回复
懒得去查了,等公布答案
isage2002 2004-07-20
  • 打赏
  • 举报
回复
楼上说得对 我用grid帮定了Dview1,是按照ColA排序的。可是现在我要按照ColB来进行查找数据
AntingZ 2004-07-20
  • 打赏
  • 举报
回复
我记得是这样:
在DataSet中的视图无论是按ColA还是按ColB来排序的
搜索速度应该是没有差异的
数据库中建立索引可以大大提高搜索速度,那是因为有索引文件的缘故
在dataset中的视图会有索引文件吗?

只是有这个印象,但一直没有去考证是否是真的是这样

-------
以上是个人愚见,还请Ado.net专家指教!
AntingZ 2004-07-20
  • 打赏
  • 举报
回复
我估计是这样:
视图Dview1按ColA来排序的,他现在要搜ColB的值,
水如烟 2004-07-20
  • 打赏
  • 举报
回复
是不是找两都的交集?
加载更多回复(6)

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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