sql="select * from Table1 where Name='"+strName+"'";这条语句有什么隐患?

kmfangxun 2006-11-27 03:24:22
sql="select * from Table1 where Name='"+strName+"'";这条语句有什么隐患存在?strName保存用户输入。
...全文
132 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
kmfangxun 2006-11-27
  • 打赏
  • 举报
回复
呵呵,前几天被用户搞得焦头烂额,拖了几天到现场才发觉就是因为楼上几个兄弟说的原因造成的。害得我还得花时间重写类似的sql语句。看来图省事是不行地!
ccrun.com 2006-11-27
  • 打赏
  • 举报
回复
如果对strName的内容不加以过滤的话,可能存在SQL注入漏洞。
LuoGD 2006-11-27
  • 打赏
  • 举报
回复
strName = "' or 'a'='a"
试试~~

用SQL参数的方法可以避免:
sql="select * from Table1 where Name=@name";

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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