ADO VC++连接access
stringinfo="SELECT*FROMUSERSWHEREUSERNAME='"+name+"'andpassword='"+pwd+"'";_variant_t...
string info="SELECT * FROM USERS WHERE USERNAME='"+name+"'and password='"+pwd+"'";
_variant_t sql=(_variant_t)(_bstr_t)(info.c_str());
try{
m_pRec->Open(sql, _variant_t((IDispatch*)m_pCon,true),
adOpenStatic,adLockOptimistic,adCmdText);
}
catch(_com_error e) {
return false;
}
这是函数的一段,try里面出错了,是字符串有问题么 展开
_variant_t sql=(_variant_t)(_bstr_t)(info.c_str());
try{
m_pRec->Open(sql, _variant_t((IDispatch*)m_pCon,true),
adOpenStatic,adLockOptimistic,adCmdText);
}
catch(_com_error e) {
return false;
}
这是函数的一段,try里面出错了,是字符串有问题么 展开
展开全部
catch(_com_error e) {
AfxMessageBox(e.Description());//弹出错误提示看看
}
我不知道你的写法有没有啥问题,通常我这样写的
CString sql="select * from table";
m_pRec->Open(sql.AllocSysString(),m_pCon.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,-1);
AfxMessageBox(e.Description());//弹出错误提示看看
}
我不知道你的写法有没有啥问题,通常我这样写的
CString sql="select * from table";
m_pRec->Open(sql.AllocSysString(),m_pCon.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,-1);
更多追问追答
追问
怎么用Sql命令删除指定条件记录呢
追答
删除数据库记录,通常直接以主键做条件,比如每行都有的id,那么则:CString sql="delete from 表 where id =1",或者以复合条件,比name='张三' and tel='13012341234' ,反正就是通过条件,筛选出你要操作的记录 如:sql="delete from 表 where name='张三' and tel='13012341234'"
展开全部
等于后面的引号多了个’ 吧还有and的前面需要一个空格
判读字符串是否有问题可以将对于的sql语句粘贴到数据库中执行看是否有错,这个办法一般比较有效
判读字符串是否有问题可以将对于的sql语句粘贴到数据库中执行看是否有错,这个办法一般比较有效
追问
追答
在Execute(info);中将可能出错的地方写道try中在catch中些自定义错误比如查询出错删除出错之类的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询