首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

vb6使用ADOX操作access数据库连续使用Append添加查询语句时出现DBID异常

2012-04-22 
vb6使用ADOX操作access数据库连续使用Append添加查询语句时出现DBID错误,求助代码如下Option ExplicitDim

vb6使用ADOX操作access数据库连续使用Append添加查询语句时出现DBID错误,求助
代码如下

Option Explicit

Dim cmd As New ADODB.Command

Dim cat As New ADOX.Catalog

Private Sub Form_Load()
  ' 打开数据库
  cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\miniDB.mdb;"

  cmd.CommandText = "Select * From 表1"
  cat.Views.Append "MyContacts1", cmd
   
  cat.Views.Append "MyContacts2", cmd
   
  cat.Views.Append "MyContacts3", cmd

End Sub

现假设MyContacts1,MyContacts2,MyContacts3都不存在

运行上面的代码后
  cat.Views.Append "MyContacts2", cmd
   
  cat.Views.Append "MyContacts3", cmd

这两句会出错,错误为

实时错误 -2147217802(80040e76)
DBID 无效

后来发现,cat.Views.Append只能使用一次,再次使用时就会发生如上错误

请问大侠原因及解决方法

[解决办法]
主要原因在Command的Name属性必须唯一

热点排行