sql语句 c++ 字符串廉洁有问题

hattie1029 2008-04-18 10:28:22
"select UserName,UserPwd ,Authority from UserInfo where UserName ='"+ send_user->UserName + "'and UserPwd = '"+send_user->UserName+"'" ;

send_user->UserName和send_user->UserName字符数组变量
怎么就有错呢!!!
...全文
98 8 打赏 收藏 举报
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Maxwell 2008-04-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 foxyz 的回复:]
"select UserName,UserPwd ,Authority from UserInfo where UserName ='"+ send_user->UserName + "'and UserPwd = '"+send_user->UserName+"'" ;

几个问题!如果UserName等是char*或者说char[]那么你最好在这里使用string(send_user->UserName)
其次,上边有人说了你的SQL也不对,and前边少个space
[/Quote]

首先,SQL写错了不会影响到c++字符串连接,其次,语句是类似于 where UserName = 'xxx'and UserPwd...单引号与and连写了,至少在SqlServer2k中是没有问题的,对于其他数据库我觉得也不是问题。
donwmufromdying 2008-04-18
  • 打赏
  • 举报
回复
"select UserName,UserPwd ,Authority from UserInfo where UserName ='"+ send_user->UserName + "'and UserPwd = '"+send_user->UserName+"'" ;

几个问题!如果UserName等是char*或者说char[]那么你最好在这里使用string(send_user->UserName)
其次,上边有人说了你的SQL也不对,and前边少个space
Maxwell 2008-04-18
  • 打赏
  • 举报
回复
send_user->UserName和send_user->UserName是char[]类型不能用加号连接,或者用strcat或者用std::string类型。

#include <string>


std::string("select UserName,UserPwd ,Authority from UserInfo where UserName ='") + std::string(send_user->UserName) + std::string("'and UserPwd = '") + std::string(send_user->UserName) + std::string("'");

当然也不用每个字符串都加std::string,好像第一个加就可以了,不过都加上可能好一点。
hityct1 2008-04-18
  • 打赏
  • 举报
回复
看着头晕。

send_user->UserName和send_user->UserName是什么类型?有相应operator +的定义吗?
xkyx_cn 2008-04-18
  • 打赏
  • 举报
回复
UserName + "' and UserPwd

少了个空格,lz仔细看看
薛定谔之死猫 2008-04-18
  • 打赏
  • 举报
回复
看不出,你们说,楼主也不出示一下出什么错
xbt746 2008-04-18
  • 打赏
  • 举报
回复
腐败了
北极猩猩 2008-04-18
  • 打赏
  • 举报
回复
廉洁有问题??

咋地了?腐败了?
相关推荐
发帖
C++ 语言

6.3w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
帖子事件
创建了帖子
2008-04-18 10:28
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下