热情软件屋

 

为什么以共享方式打开数据库仍然不能增加记录


编号:QA001124
建立日期: 1999年6月7日 最后修改日期:1999年6月7日
所属类别:

simon:
    VC++ 6
    Win98
    我要访问STOCK.DBF。这儿定义全局变量
    //sf1.cpp
    CDatabase *pdb=new CDatabase;
    BOOL status=pdb->OpenEx("DSN=sF");//sf 是数据源CSf1Set *ptosf=new CSf1Set (pdb); //CSf1set 是CRECORDSET的子类
    BOOL status1=ptosf->Open(CRecordset::snapshot,"SELECT * FROM STOCK");
    
    //我要往库加记录
    //这是对话框初始化代码
    //sf1View.cpp
    CSf1View::CSf1View():CRecordView(CSf1View::IDD)
    {extern CSf1Set *ptosf; //使用全局对象
    if(ptosf->CanAppend())
    ptosf->AddNew();
    }
    可惜我仍不能增加新记录,我的问题是为什么以共享方式打开数据库仍然不能增加记录谢谢!!

回答:

    你使用CRecordset::snapshot方式打开数据库,CRecordset::snapshot速度比较快,但是只读的,一般只能用于数据查询。你如果想增加记录,应该采用CRecordset::dynaset方式。
    6月7号,Simon来信:
    我是SIMON,得到你对VC6关于数据库的解答,非常感激。现在用DYNASET方式可以增加记录了,多谢!!

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio