我用vb自带的可视化数据管理器建立了一个access库a,a中有若干自建表.然后
Dim z As New ADODB.Connection
Dim zr As New ADODB.Recordset
Dim s As String
s = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\WINDOWS\Desktop\a.mdb;Persist Security Info=False"
Set z = New ADODB.Connection
Set zr = New ADODB.Recordset
zr.Open "select [name] from MSysobjects where [type]=1 and [flags]=0", z, 1, 3
.
.
.执行后vb提醒我说没有访问msysobjects的权限....郁闷啊!!!!!!!!

解决方案 »

  1.   

    再补充一个小问题:为何在执行sql语句create table 表名(xx char(10) null)时 当xx处  改成c++时就出错啊
    zr.open "create table xyz(c++ char(10) null)",z,1,3
    请高手们为我解答 分不够可续!!!!!!!!!!!!
      

  2.   

    在c++处 加'[]'阿!!!   eg:::    [c++]
      

  3.   

    1:
        打开access文件 -〉工具 - 〉选项 - 〉视图中选中系统对象 - 〉确定
       然后: 工具-〉安全-〉用户与组的权限-〉对象名称中选中msysobjects->在下面的全先中勾选你需要的权限2:
    z.Exec
      

  4.   

    1:
        打开access文件 -〉工具 - 〉选项 - 〉视图中选中系统对象 - 〉确定
       然后: 工具-〉安全-〉用户与组的权限-〉对象名称中选中msysobjects->在下面的全先中勾选你需要的权限2:
    z.Execute "create table xyz([c++] char(10) null)"