以OpenSchema方式打开所有的表之后,怎样判断是否是"SYSTEM TABLE"?
解决方案 »
- 开源的 EventCore 库 源代码下载地址, 大家来捧个场
- 重绘标题拦。。。。比如加个按纽,然后可以点这个按纽,按纽的外表也随之改变!
- 调试跟踪定位不准的问题
- VC中操作文件的函数中那个函数最有效率....
- 一个菜菜的问题
- MSN 服务的问题 1000分求解,马上给
- 等待在线:visual c++ "Hello word"问题,加分50
- 〉〉能不能详细说一下有关使用dcom开发分布式应用时,服务器端和客户端要如何配置??
- 在listctrl中创建个combobox
- error LNK2001: unresolved external symbol "public: __thiscall CServerDlg::CServe
- 【急】基于对话框的MFC,在VS2008平台下自己嵌入一个菜单。加入Skin++皮肤后菜单栏现实不出来
- 如何将dll插入到其他的线程中????
里头的去除SYSTEM TABLE的相关代码我没有看懂:
while (VARIANT_TRUE != Rs1->GetadoEOF())
{
// Traversing through the Fields collection to get the values.
if(!csTemp.IsEmpty())
csTemp += " ; "; varValue = Rs1->Fields->GetItem(_variant_t((long)2))->Value;
if(varValue.vt == VT_BSTR)
csTemp += varValue.bstrVal;
else
if(varValue.vt == VT_UI4)
csTemp.Format("%s %l",csTemp,varValue.lVal); Rs1->MoveNext();
}
VT_BSTR是SYSTEM TABLE系统表吗
_RecordsetPtr m_pRecordset;
m_pConnection.CreateInstance(__uuidof(Connection));
try
{
_bstr_t strConnect = "Provider=SQLOLEDB; Server="服务器名称";Database="数据库名称";uid="SA";pwd=""";
m_pConnection->Open(strConnect,"","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox("数据库连接失败!");
}
_variant_t vFieldValue;
CString strFieldValue;
m_pRecordset=m_pConnection->OpenSchema(adSchemaTables);
while(VARIANT_FALSE==m_pRecordset->adoEOF)
{
strFieldValue=(char*)_bstr_t(m_pRecordset->GetCollect("TABLE_TYPE"));
if(!strcmp(strFieldValue.GetBuffer(0),"TABLE")||!strcmp(strFieldValue.GetBuffer(0),"table"))
{
strFieldValue.ReleaseBuffer();
strFieldValue=(char*)_bstr_t(m_pRecordset->GetCollect("TABLE_NAME"));
}strFieldValue得到的就是非系统表.