首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

数据表里没有记录的时候,程序出错,怎么判断、预防呢

2012-01-26 
数据表里没有记录的时候,程序出错,如何判断、预防呢?我在OnInitDialog()这个函数里,有下面这些代码(部分)用

数据表里没有记录的时候,程序出错,如何判断、预防呢?
我在OnInitDialog()这个函数里,有下面这些代码(部分)用于获取数据表的记录数量:

_variant_t RecordsAffected;
m_pRecordset=m_pConnection->Execute("SELECT COUNT(*) FROM student",&RecordsAffected,adCmdText);
_variant_t vIndex=(long)0;
_variant_t vCount=m_pRecordset->GetCollect(vIndex);
count=vCount.lVal;
m_pRecordset->Close();

如果数据表里有记录的时候,程序可以正常运行。
但是如果数据表里没有记录,程序一运行就弹出出错的对话框。

在哪里增加判断数据表中有无记录、防止程序出错的的代码呢?

我想尝试如下的语句,但不得 要领。
if(m_pRecordset->BOF){
m_status="数据表里没有数据!";
return false;
}

谢谢了!

[解决办法]
这样试试
m_pRecordset=m_pConnection->Execute("SELECT * FROM student",&RecordsAffected,adCmdText);
if(m_pRecordset->BOF)
return false;

[解决办法]

C/C++ code
while(PRs!=NULL&&!PRs->adoEOF){    CString val;    str_val = PRs->GetCollect(long(0));    if   (str_val.vt   ==   VT_NULL)        val="";    else        val= CString((char *)(_bstr_t)str_val);} 

热点排行