为什么以共享方式打开数据库仍然不能增加记录
编号: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方式可以增加记录了,多谢!!
此问题由李海回答。
| |
|
|
| |
|
|