首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

sql 语句异常,帮小弟我看看哪儿错了

2013-10-22 
sql 语句错误,帮我看看哪儿错了select d.UserName,T.Datestr from lander AS d inner join Log AS T where

sql 语句错误,帮我看看哪儿错了

select d.UserName,T.Datestr from lander AS d inner join Log AS T where d.UserName ='"+User+"' and T.Datestr between '"&data1&"' and '"&data2&"'

提示: error C2678: 二进制“&”: 没有找到接受“ATL::CStringT<BaseType,StringTraits>”类型的左操作数的运算符(或没有可接受的转换)

select d.UserName,T.Datestr from lander d inner join Log T where d.UserName ='"+User+"' and T.Datestr between '"+data1+"' and '"+data2+"'

提示:error C2593: “operator +”不明确

select d.UserName,T.Datestr from lander d inner join Log T where d.UserName ='"+User+"'

成功!

select d.UserName,T.Datestr from lander d inner join Log T where T.Datestr between '"+data1+"' and '"+data2+"'

提示:error C2111: “+”: 指针加法要求整型操作数

完整语句:
reg.Open(CRecordset::forwardOnly,_T("select d.UserName,T.Datestr from lander d inner join Log T where d.UserName ='"+User+"' and T.Datestr between '"+data1+"' and '"+data2+"'"));

[解决办法]
TCHAR sqlstr[2048];
_stprintf(sqlstr,_T("select d.UserName,T.Datestr from lander d inner join Log T where d.UserName ='%s' and T.Datestr between '%s' and '%s'",User,data1,data2);
reg.Open(CRecordset::forwardOnly,strsql);

热点排行