+ -
当前位置:首页 → 问答吧 → MFC数据库编程中的问题

MFC数据库编程中的问题

时间:2011-11-27

来源:互联网

sql.Format(" Select * from MEMO_INFO_TAB "
" where DATEPART(wk,happen_date) = DATEPART(wk,'%s' and DATEPART(yy,happen_date) = DATEPART(yy,'%s')",strCurDate,strCurDate);
//GetWeekData(sql);

CRecordset rs(m_pWeek);
rs.Open(CRecordset::dynaset,sql);

strCurDate 为当前时间 happen_date 为数据库中的时间。

当执行Open的时候,sql语句出错。
1,但是在SQLserver 查询分析器中该SQL语句可以顺利执行,得到与当前时间为同一周的所有记录。
语句如下:(select * from memo_info_tab where DATEPART(wk,happen_date ) = DATEPART(wk, GETDATE()) and
 DATEPART(yy, happen_date) = DATEPART(yy, GETDATE()))


2,在程序中应该怎样改写这个SQL 语句啊?
请大虾指教啊?

作者: yht991428   发布时间: 2011-11-27

传变量的地方 要用双引号 '%s' => "%s"

作者: heksn   发布时间: 2011-11-27

用双引号是错的,要用单引号。关键是在server里面可以执行。在C++写的就不对了。可能是函数有问题,例如:datepart 等

作者: yht991428   发布时间: 2011-11-27