比如说,CRecordset* m_pset;
................
然后m_pset->open(CRecorset:snapshot,"select * from tb1");
m_pset->movefirst();
while (!m_pset->ISeof())
{
m_pset->edit();
////////在这里我想修改属性值,什么修改阿?
。
}
我查了很多都没有这方面的知识。要用什么命令啊???
谢谢!
................
然后m_pset->open(CRecorset:snapshot,"select * from tb1");
m_pset->movefirst();
while (!m_pset->ISeof())
{
m_pset->edit();
////////在这里我想修改属性值,什么修改阿?
。
}
我查了很多都没有这方面的知识。要用什么命令啊???
谢谢!
然后用update吧
while (!m_pset->ISeof())应该是while (!m_pset->IsEOF())才对。
不是用什么CRecordView来实现。是动态的打开一个未知的表
另外to:liuyiuhui(风筝线) 编码的大小写暂时不考虑,我只要一个思想。
例如。如果你的表中有两个字段,分别是User和password。那么这两个字段在你的程序中所对应的变量就是m_User和m_password。你要修改他们的值直接用m_pSet->mUser = "...";然后Update就可以了。如果你的表中的字段是中文名的话,那么他们在你的程序中所对应的变量就是m_column1和m_column2,明白了吗??
CRecordset* m_pset;
.......
strDB="DSN=dBASE Files;DefaultDir="+str_Dir;
if(m_db.IsOpen())
m_db.Close();
m_db.OpenEx(strDB);
m_pset=new CRecordset(&m_db);
m_pset->Open(CRecordset::snapshot,"select * from tb1");
m_pset->MoveFirst();
m_pset->Edit();
m_pset->m_column1="asdas";
m_pset->Update();
error C2039: 'm_column1' : is not a member of 'CRecordset'
如果直接用属性名m_pset->m_size="asdas";
error C2039: 'm_size' : is not a member of 'CRecordset'
我后来考虑直接调用这个函数。但我不知道什么获得pFX这个变量。
所以现在的问题是什么获得CFieldExchange* pFX这个变量。
谢谢!
然后要什么按位置来修改呢?
不要让我每修改一个值都要执行一次Update的SQL语句。
我只在 stdafx.h 里包含#include <afxdb.h>
表格是这么指定的:
if (file_dlg.DoModal()==IDCANCEL)
return;
m_TableName1=file_dlg.GetFileName();