bryhter
路人甲
路人甲
  • 注册日期2003-09-30
  • 发帖数63
  • QQ
  • 铜币308枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:2514回复:5

求教:如何用.MDB文件进行数据关联??

楼主#
更多 发布于:2004-02-04 19:08
想用.mdb数据库进行图形文件的关联,实现图形属性的双向查询,可是按照如下操作却出现问题,代码如下,请达人赐教,很急:
  Dim ntable As New MapObjects2.Table
 t br.Database = "C:\Program Files\ESRI\MapObjects2\Samples\Data\USA\usa.mdb"
  tbr.Name = "USLAKES"
  bs = mapDisp.Layers("USLAKES").AddRelate("FeatureId", tbr, "FeatureId")
然后按照书上的关于查看代码进行查看操作,出现问题,是"自动化错误",不知那里出了问题?

  Set lyr = New MapLayer
Set lyr = frmRelate.Map1.Layers(0)
Set np = frmRelate.Map1.ToMapPoint(X, Y)
Set recs = lyr.SearchByDistance(np, 1, "")

Set frmRelate.np = Nothing
Set frmRelate.np = recs.Fields("shape").Value
frmRelate.Map1.FlashShape recs.Fields("shape").Value, 3
frmRelate.Map1.TrackingLayer.Refresh True

ListView1.ListItems.Clear
Dim items As ListItem
For Each fld In recs.Fields
  Set items = ListView1.ListItems.Add(, , fld.Name)
  items.SubItems(1) = fld.ValueAsString
Next
<img src="images/post/smile/dvbbs/em00.gif" />
喜欢0 评分0
bryhter
路人甲
路人甲
  • 注册日期2003-09-30
  • 发帖数63
  • QQ
  • 铜币308枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2004-02-05 11:16
怎们没有达人帮忙啊!!!
上面的问题就是关联后,可以将.mdb数据库和SHP文件的.dbf文件里的字段读出来,可是值却读不出来,不知怎么回事!提示是自动化错误!真的很急,我要赶着2月分毕业,在去深造,请达人帮忙
拜托了!!!!
举报 回复(0) 喜欢(0)     评分
bryhter
路人甲
路人甲
  • 注册日期2003-09-30
  • 发帖数63
  • QQ
  • 铜币308枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2004-02-05 11:24
我用本论坛的关联小程序改编来做的,这个程序只有用DBF文件关联,我想用.MDB格式数据表进行关联,以便查询时能显示.MDB表中的属性值
请达人帮忙!!!!!!!
举报 回复(0) 喜欢(0)     评分
bryhter
路人甲
路人甲
  • 注册日期2003-09-30
  • 发帖数63
  • QQ
  • 铜币308枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2004-02-09 11:04
求人不如求己!!
登入过很多GIS网站,就属这个稍微有点人气
不曾想。。
咳!
实在很让我失望
问题已初步解决
不是用addrelate
用数据库关键字段进行连接的,虽然有些麻烦,可总算有点成果!
举报 回复(0) 喜欢(0)     评分
gis1117
  • 注册日期
  • 发帖数
  • QQ
  • 铜币
  • 威望
  • 贡献值
  • 银元
4楼#
发布于:2004-02-09 22:17
用数据库关键字?你可以mo可以连接多种数据库的
举报 回复(0) 喜欢(0)     评分
bryhter
路人甲
路人甲
  • 注册日期2003-09-30
  • 发帖数63
  • QQ
  • 铜币308枚
  • 威望0点
  • 贡献值0点
  • 银元0个
5楼#
发布于:2004-02-11 10:39
我要addrelate进行数据库的表连接,只能读字段,可数值读不出,提示自动化错误!
后来我用数据库语言进行图形属性数据的关联,不过比较麻烦,要建立id关键字段
请问gis1117,你是如何来作的,具体怎么操作?
另外,不知addrelate如何来对.MDB文件操作?请赐教
举报 回复(0) 喜欢(0)     评分
luongsecond
路人甲
路人甲
  • 注册日期2003-11-13
  • 发帖数35
  • QQ
  • 铜币304枚
  • 威望0点
  • 贡献值0点
  • 银元0个
6楼#
发布于:2005-05-09 21:16
<P>Dim pCom As New ADODB.Command
Dim pTable As New MapObjects2.Table
Dim ly As New MapObjects2.MapLayer</P>
<P>pCom.ActiveConnection = Cnn
pCom.CommandType = adCmdText</P>
<P>Set ly = Map2.Layers("lake")</P>
<P>SQL = "select * from TemResult"
pCom.CommandText = SQL</P>
<P>Set pTable.Command = pCom
      
       If ly.AddRelate("name", pTable, "name", True) Then
          ModelRender ly
       Else
          MsgBox "图层和属性关联不成功,不能模拟"
       End If</P>
<P>上面的程序是我开发的软件中的代码。没问题的,你试是</P>
举报 回复(0) 喜欢(0)     评分
游客

返回顶部