利用DAO操作ACCESS数据库,但是有一个字段是备注型的,我不知道该如何进行操作COleVariant varValue;
m_pRecordSet->GetFieldValue(j, varValue);//得到备注字段的内容,这样可以吗?
const VARIANT* variant = LPCVARIANT(varValue);
switch(variant->vt) ???后面怎么判断呢?是判断是否为VT_BSTR吗?还有,取出来的内容是放在CString 中吗?我听说好象CString的字符长度不能超过255啊!!谢谢大家拉!
m_pRecordSet->GetFieldValue(j, varValue);//得到备注字段的内容,这样可以吗?
const VARIANT* variant = LPCVARIANT(varValue);
switch(variant->vt) ???后面怎么判断呢?是判断是否为VT_BSTR吗?还有,取出来的内容是放在CString 中吗?我听说好象CString的字符长度不能超过255啊!!谢谢大家拉!
解决方案 »
- IHTMLFramesCollection2 如何遍历集合中每人frame的name?
- 画一个坐标系,画函数 y=sin(x)的图像,这个要用到坐标转换的,怎么去搞呢?请高手帮忙
- 高分求 2002 ,2003 ,2004 年的程序员试题........
- 子窗口遮盖主窗口的问题
- 高分求好的I/O监控方法!分数下有垫底,上不封顶,希望今天能解决,UP有分!
- 非面向连接的socket编程,为什么不能连续收包?请高手多给意见
- rename(...)的问题!!!!!
- 怎样在两个自定义对话中传输数据,这两个对话框不是同一个类
- 如何用CBitmapButton呢????
- 各位仁兄,救救我吧!!!!!!高分相送啊。拜托!
- 奇怪了,总是无法往注册表里写数据?
- 怎样将文件中的CByteArray数据读取出来
调试窗口看到的是255个长度限制
{
CString strValue;
_variant_t var_t;
_bstr_t bst_t;
time_t cur_time;
CTime time_value;
COleCurrency var_currency;
switch(var.vt)
{
case VT_EMPTY:strValue=_T("");break;
case VT_UI1:strValue.Format ("%d",var.bVal);break;
case VT_I2:strValue.Format ("%d",var.iVal );break;
case VT_I4:strValue.Format ("%d",var.lVal);break;
case VT_R4:strValue.Format ("%f",var.fltVal);break;
case VT_R8:strValue.Format ("%f",var.dblVal);break;
case VT_CY:
var_currency=var;
strValue=var_currency.Format(0);
break;
case VT_BSTR:
var_t=var;
bst_t=var_t;
strValue.Format ("%s",(const char*)bst_t);
break;
case VT_NULL:strValue=_T("");break;
case VT_DATE:
cur_time = var.date;
time_value = cur_time;
strValue=time_value.Format("%A,%B%d,%Y");
break;
case VT_BOOL:strValue.Format ("%d",var.boolVal );break;
default:strValue=_T("");break;
}
return strValue;
}写了一个函数,直接调用就可以转换了,很简单