如何解决用户密码中含有特殊字符的查询??????

老鱼趣多多 2006-03-16 09:53:21
如何解决用户密码中含有特殊字符的查询??????

比如用户名:aaaa
密码:ame×!&an

怎样构建SQL查询语句???谢谢了。
...全文
1153 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
wizardblue 2006-03-16
  • 打赏
  • 举报
回复
PreparedStatement pStmt=null;
pStmt=conn.prepareStatement(sql);
pStmt.setString(1,name);
pStmt.setString(2,password);
  • 打赏
  • 举报
回复
没看懂
guo__peng(guo__peng) 说这是防SQL注入? 这种写法明明最防不了.
beikexp 2006-03-16
  • 打赏
  • 举报
回复
换一种思路,把特殊字符换掉
密码用明码存就是失败的
加密吧...
guo__peng 2006-03-16
  • 打赏
  • 举报
回复
楼主的意思是不是要防止SQL注入呀!但是还得允许用户的密码里有特殊字符。
螃蟹k3179 2006-03-16
  • 打赏
  • 举报
回复
可能我理解错了.
螃蟹k3179 2006-03-16
  • 打赏
  • 举报
回复
能取出来吧?是不是忘了转意字符前加\
hongxua 2006-03-16
  • 打赏
  • 举报
回复
楼主可以试试二楼提供的办法,应该可以解决。
我用这种办法,'可以直接insert数据库里,不用处理。
老鱼趣多多 2006-03-16
  • 打赏
  • 举报
回复
就是说比如,

用户在登录页面,输入用户名,密码,

而密码包含特殊字符,

用正常的匹配语句就查询不出来用户的这条记录了。
÷
我是想询问这条查询SQL该如何构造。
ibiswang 2006-03-16
  • 打赏
  • 举报
回复
用Preparestatement: select * from user where username=? and pass=?

giant216 2006-03-16
  • 打赏
  • 举报
回复
不明白楼主的意思,是不让输入特殊字符还是从数据库里取不出相应的字段阿??????
guo__peng 2006-03-16
  • 打赏
  • 举报
回复
用参数查询
String sql="select userName,userPassword from users where userName=? and userPassword=?";
PreparedStatement pStmt=null;
pStmt=conn.prepareStatement(sql);
pStmt.setString(1,name);
pStmt.setString(2,password);
老鱼趣多多 2006-03-16
  • 打赏
  • 举报
回复
strSql = "SELECT * FROM USER WHERE UID=" + uid + "AND PWD="+pwd;
这条语句只满足普通情况。
piaopiao11 2006-03-16
  • 打赏
  • 举报
回复
用PreparedStatement

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧