菜鸟问题,如何打开空数据库?

loveonce 2003-08-21 06:18:26
我在vc中调用数据库的时候,如果数据库为空,它就会弹出“试图越过数据的有效存贮区间”的对话框,或者把它删空的话,我再点击添加按钮也弹出这样的对话框,请问各位高手我如何才能打开一个空数据库,还有我删空之后添加按钮不能用的问题?
非常感谢!!!
...全文
39 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
loveonce 2003-08-24
  • 打赏
  • 举报
回复
谢谢各位,问题我已经解决了,

结贴!
xinxizheng 2003-08-23
  • 打赏
  • 举报
回复
搂主,注意不要动数据库的指针,先进行判断,为空的话先输入数据,在操作,就可以了
loveonce 2003-08-22
  • 打赏
  • 举报
回复
我是想打开数据库,我试试你说的方法吧
jia4950 2003-08-22
  • 打赏
  • 举报
回复
你打开数据库后进行了什么操作?如果创建纪录集,可以判断一下纪录集是否为空,如果为空就返回。
loveonce 2003-08-22
  • 打赏
  • 举报
回复
先在此谢谢楼上的兄弟们!

我现在改了一下程序,倒是可以打开空数据库了,不过出现新的问题就是在给一个空数据库添加数据的时候出现问题了,我在添加完数据时,点确定弹出“更新或删除的企图失败”的对话框,然后只能加进去一个数。主要代码如下:


bool m_Add;
void Jilu::Adding()
{
if(m_Add)
{
m_Add=false;
UpdateData(true);
m_pDoc->m_ExaSet.Update();
m_pDoc->m_ExaSet.Requery();
UpdateData(false);
}
}


void Jilu::OnRecordAdd()
{
// TODO: Add your command handler code here
Adding();
if((m_pDoc->m_ExaSet.IsBOF()&&!m_pDoc->m_ExaSet.IsEOF())||
(!m_pDoc->m_ExaSet.IsBOF()&&m_pDoc->m_ExaSet.IsEOF())||
(m_pDoc->m_ExaSet.IsBOF()&&m_pDoc->m_ExaSet.IsEOF()))
;
else
{
UpdateData(true);
m_pDoc->m_ExaSet.Edit();
m_pDoc->m_ExaSet.Update();
}
m_pDoc->m_ExaSet.Requery();
m_pDoc->m_ExaSet.AddNew();
m_Add=true;
m_pDoc->m_ExaSet.m_column1="无";
m_pDoc->m_ExaSet.m_column2="无";
m_pDoc->m_ExaSet.m_column3=0;
m_pDoc->m_ExaSet.m_column4=0;
m_pDoc->m_ExaSet.m_column5=0;
m_pDoc->m_ExaSet.m_column6=0;
UpdateData(false);
m_pDoc->m_ExaSet.Requery();

}

谢谢各位朋友帮小弟看一下,分不够可以再加!
commandconque 2003-08-22
  • 打赏
  • 举报
回复
我来说说我的看法:
我的程序中在进行添加操作空数据库时未出现贴主的情况,到是在其他操作(如统计、移动记录指针、删除、刷新)中出现该情况,贴主不妨检查一下是否有类似的对空数据库操作。
我使用的是SQL语句的INSERT INTO 语句进行添加的,没有什么问题。
判断数据库为空使用IsEof()和IsBof在空数据集中也可能出错,我使用的是SQL 中的SELECT COUNT(*)统计语句,然后获得数据集中的统计结果,如果为0就避免一些操作,你可以尝试一下。
jiey 2003-08-22
  • 打赏
  • 举报
回复
用这个办法可以进行判断:
m_pSet->IsEOF(); //如果已是最后一条记录了,就不要进行读写操作了
m_pSet->IsBOF(); //如果第一条记录都为空,说明表中没有任何纪录
loveonce 2003-08-21
  • 打赏
  • 举报
回复
我的数据库是access,可是现在有没有什么方法可以解决啊?
vcforever 2003-08-21
  • 打赏
  • 举报
回复
你用的数据库是什么的,是ACCESS吗?
ACCESS不好,经常出现一些莫名其妙的错误
用SQL或ORACLE吧!

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧