怎么用ADO查询数据库里有几个表

来源:百度知道 编辑:UC知道 时间:2024/05/30 23:35:27
用其它的如DAO也行

CString m_strConnect;
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;
CStringList* m_pStrList;

m_strConnect = "Provider=SQLOLEDB.1;Server=127.0.0.1;Database=student/*student为数据库名*/;uid=sa;pwd=123456/*123456为数据库密码*/";
m_pConnection.CreateInstance(__uuidof( Connection ));
m_pConnection->Open((LPCSTR)m_strConnect,"","",adModeUnknown);
m_pRecordset.CreateInstance(__uuidof(Recordset));
CString strSelect("select Name from sysobjects where xtype='u' and status>=0");
m_pRecordset->CursorType = adOpenStatic;
m_pRecordset->CursorLocation = adUseClient;
m_pRecordset->CacheSize = 1000L;
m_pRecordset->Open((LPCTSTR)strSelect, m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
LONG lCount = m_pRecordset->GetRecordCount();

lCount就是用户表的个数了,你也可以用记录集指针m_pRecordset遍历取得表名