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);