ADO access数据库 判断表是否存在


  1. MSysObjects中取得表名
    select * from MSysObjects where Name='mytableName'
    出现问题:没有读取MSysObjects的权限。而且数据库是程序创建的无法更改权限。
  2. 打开目标表,判断异常
bool IsTableExists( const string& strTableName )
{
    try{
        m_pRecordset->Open(_variant_t(strTableName.c_str()), _variant_t((IDispatch *)m_pConn,true), adOpenKeyset, adLockOptimistic, adCmdTable);
    }
    catch (_com_error &e)
    {
        return false;
    }
    m_pRecordset->Close();
    return true;
}

问题得到解决。

哎 不善于搜索浪费了我很长的时间啊..`(:зゝ∠)_
直接搜索这个问题完全没能解决的(ノಠ益ಠ)ノ彡┻━┻。
直到我找到ADO数据库编程入门这篇文章。
( _ _)ノ|所以少年啊…还是阅读api文档才是王道啊

更多推荐

ADO access数据库 判断表是否存在