请问谁熟悉CDBVariant?请帮我看看

54yuandian 2003-03-26 11:56:24
CDBVariant var;
PWCHAR pWchar;
DWORD cbBytes,nSize;
CString sTime;
CRecordset setDate( lpTran->pDb );
setDate.Open( CRecordset::snapshot, "SELECT GETDATE() as svrtime" );
setDate.GetFieldValue( (short)0, var );

ASSERT( var.m_dwType == DBVT_DATE );////////////是不是一定要加上这行?
sTime.Format( "%d-%d-%d %d:%d:%d",
var.m_pdate->year,
var.m_pdate->month,
var.m_pdate->day,
var.m_pdate->hour,
var.m_pdate->minute,
var.m_pdate->second );

我取数据库那台机器的时间现在出错,不稳定。是不是一定要加上面那行?(以前我没写这句的)
...全文
73 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
CCBeyond 2003-03-27
  • 打赏
  • 举报
回复
“ASSERT( var.m_dwType == DBVT_DATE );////////////是不是一定要加上这行?”

这行只用于Debug版对var变量类型的检测,如果var.m_dwType不等于DBVT_DATE, 就抛出异常, 跟程序功能没任何关系。
CCBeyond 2003-03-27
  • 打赏
  • 举报
回复
CDBVariant var;
PWCHAR pWchar;
DWORD cbBytes,nSize;
CString sTime;
CRecordset setDate( lpTran->pDb );
setDate.Open( CRecordset::snapshot, "SELECT GETDATE() as svrtime" );

// 加入下面一行
var.m_dwType = DBVT_DATE;

setDate.GetFieldValue( (short)0, var );

ASSERT( var.m_dwType == DBVT_DATE );////////////是不是一定要加上这行?
sTime.Format( "%d-%d-%d %d:%d:%d",
var.m_pdate->year,
var.m_pdate->month,
var.m_pdate->day,
var.m_pdate->hour,
var.m_pdate->minute,
var.m_pdate->second );
54yuandian 2003-03-26
  • 打赏
  • 举报
回复
没人会吗?
自己up

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧