recordset有getfieldvalue,但是没有setfieldvalue,高手指点一下怎么实现setfieldvalue好吗?
解决方案 »
- 当前路径的问题
- UECreatorContainer::iterator iter 前面的UECreatorContainer:: 是什么意思
- 寻人:指纹识别
- 频率高时采集数据不丢,频率低时却有丢失
- 用户名和密码直接写在C++的代码里安全吗?如果不安全应该怎么做?
- 很急!!工程作完后的处理问题!!!大家来帮帮忙呀!
- 一个关于UI线程的问题
- 画线,简单问题送分
- 关于钩子(hook.dll),我不知道这是什么玩艺,不过我想编一个关于它的东西,朋友们推荐几本书和几个网站and 实例原码吧。
- 做一名中学的计算机教师,好吗?
- 请教如何在程序中得到系统中某个组件的相关信息
- 请教,在双击事件中如何得到图片的文件名?
m_set.Open();
m_set.AddNew();
m_set.m_1=...;
m_set.m_2=..;
m_set.Update();
m_set.close();
其中m_1,m_2分别是m_set的成员变量,是数据库中的字段描述,都是CString类型的。
详细使用见MSDN
只有几个数据成员,但是没有字段的东西啊
“ set ......."
"alter............"
等等啊
if (m_strType == "工作日志")
type = "worklog";
else if (m_strType == "本周总结")
type = "summary";
else if (m_strType == "下周计划")
type = "log_plan";
HRESULT hr;
CString strSQL = "SELECT * FROM ";
strSQL += type;
_bstr_t bstrQuery = strSQL;
_bstr_t bstrType = type;
_bstr_t bstrText = m_text;
_variant_t vNull;
vNull.vt = VT_ERROR;
vNull.scode = DISP_E_PARAMNOTFOUND; CWorkLogApp* pApp = (CWorkLogApp*)AfxGetApp();
if (m_text.IsEmpty())
AfxMessageBox("所需存储的记录无内容!");
else
{
try
{
hr = pApp->m_pRecordset.CreateInstance(__uuidof(Recordset));
if(SUCCEEDED(hr))
{
pApp->m_pRecordset->PutRefActiveConnection(pApp->m_pDBConnection);
hr = pApp->m_pRecordset->Open(_variant_t(bstrQuery), vNull,
adOpenForwardOnly, adLockOptimistic, adCmdText);
COleSafeArray vaFieldlist;
vaFieldlist.CreateOneDim(VT_VARIANT, 3);
long lArrayIndex[1];
lArrayIndex[0] = 0;
vaFieldlist.PutElement(lArrayIndex, &(_variant_t("user_name")));
lArrayIndex[0] = 1;
vaFieldlist.PutElement(lArrayIndex, &(_variant_t("log_date")));
lArrayIndex[0] = 2;
vaFieldlist.PutElement(lArrayIndex, &(_variant_t(bstrType)));
COleSafeArray vaValuelist;
vaValuelist.CreateOneDim(VT_VARIANT, 3);
lArrayIndex[0] = 0;
vaValuelist.PutElement(lArrayIndex, &(_variant_t(m_pUser->GetName())));
lArrayIndex[0] = 1;
CString strTime;
strTime.Format("%d-%d-%d", m_tDate.GetYear(), m_tDate.GetMonth(), m_tDate.GetDay());
_bstr_t bstrTime = strTime;
vaValuelist.PutElement(lArrayIndex, &(_variant_t(bstrTime)));
lArrayIndex[0] = 2;
vaValuelist.PutElement(lArrayIndex, &(_variant_t(bstrText)));
pApp->m_pRecordset->AddNew(vaFieldlist, vaValuelist);
pApp->m_pRecordset->Close();
}
AfxMessageBox("储存成功!");
}
catch(_com_error &e)
{
TRACE("Error:%08lx.\n", e.Error());
TRACE("ErrorMessage:%s.\n", e.ErrorMessage());
TRACE("Source:%s.\n", (LPCTSTR)_bstr_t(e.Source()));
TRACE("Description:%s.\n", (LPCTSTR)_bstr_t(e.Description()));
}
catch(...)
{
TRACE("Exception occurred!\n");
}
}