【问题标题】:Getting names of Access database tables with Matlab使用 Matlab 获取 Access 数据库表的名称
【发布时间】:2011-03-07 06:31:38
【问题描述】:

我正在尝试使用 Matlab 获取 Access 数据库中所有表的列表。

到目前为止,我使用的是 actxobject,并且可以成功地对数据库运行查询,但是我阅读过的所有方法 here 都失败了。

我一直收到错误消息“MSysObjects 没有读取权限”。查询在 Access 程序中运行良好,但我的程序的实现不允许我将查询存储在那里。

那么,我的问题是:有没有办法通过Matlab列出Access数据库的所有表?

【问题讨论】:

    标签: ms-access matlab adodb


    【解决方案1】:

    考虑这段代码:

    conn = actxserver('ADODB.Connection');
    connString = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Nwind.mdb';
    conn.Open(connString);
    
    rs = conn.OpenSchema('adSchemaTables').GetRows;
    tableNames = rs(3, ismember(rs(4,:),'TABLE') );
    

    结果是:

    >> tableNames'
    ans = 
        'Categories'
        'Customers'
        'Employees'
        'Order Details'
        'Orders'
        'Products'
        'Shippers'
        'Suppliers'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-17
      • 2012-09-27
      • 1970-01-01
      • 1970-01-01
      • 2010-10-25
      相关资源
      最近更新 更多