正在阅读:获取ACCESS2000数据库中所有表的名称获取ACCESS2000数据库中所有表的名称

2004-04-29 14:58 出处:CSDN 作者:taianmonkey 责任编辑:linjixiong
void OpenSchemaX(TCHAR *TableName)   {   HRESULT hr = S_OK;      ::CoInitialize(NULL); //初始化Com      IADORecordBinding *picRs = NULL;      _RecordsetPtr pRstSchema("ADODB.Recordset");   _ConnectionPtr pConnection("ADODB.Connection" );      pConnection->ConnectionString = TableName;   pConnection->Provider = "Microsoft.Jet.OLEDB.4.0";      try   {   pConnection->Open(pConnection->ConnectionString, "", "", adModeUnknown);   pRstSchema->QueryInterface(   __uuidof(IADORecordBinding), (LPVOID*)&picRs);   pRstSchema = pConnection->OpenSchema(adSchemaTables);//枚举表的名称处理      while(!(pRstSchema->EndOfFile))   {   CString strTableType;      _bstr_t table_name = pRstSchema->Fields->   GetItem("TABLE_NAME")->Value;//获取表的名称      _bstr_t table_type = pRstSchema->Fields->   GetItem("TABLE_TYPE")->Value;//获取表的类型      strTableType.Format("%s",(LPCSTR) table_type);      if(!lstrcmp(strTableType,_T("TABLE")))   {   m_strList.AddString((LPCSTR) table_name);//添加表的名称   }      pRstSchema->MoveNext();   }   // Clean up objects before exit.      pRstSchema->Close();   pConnection->Close();   }      catch (_com_error &e)   {   // Notify the user of errors if any.   // Pass a connection pointer accessed from the Connection.   PrintProviderError(pConnection);   PrintComError(e);   }   希望看到更多更经典的开发技巧,请随时刷新《开发特区》栏目。
察看评论详细内容 数据库中所有表的名称">我要发表评论
作者笔名 简短内容 发表时间
:
键盘也能翻页,试试“← →”键

关注我们

最新资讯离线随时看 聊天吐槽赢奖品