跟关键字没什么关系,而是要替换掉单引号‘ 双引号“等一些可能会截断sql语句的非法符号

解决方案 »

  1.   

    防止漏洞最好是不要使用拼SQL语句的方法,而应该使用PreparedStatement
    这样就不存在用户输入有问题数据的问题
      

  2.   

    使用 PreparedStatement !!或者 替换掉  "'" 以及 "--"
      

  3.   

    preparedstatment
    还有记得要做参数检查
    替换掉'是最基本的方法,要注入漏洞还有很多。
    最好的是不要拼sql
      

  4.   

    不要拼sql 是什么意思丫?不是太懂~~
    能不能举个例子说说!!
      

  5.   

    我一直是使用替换'和",不要拼sql是不是使用preparedstatment在sql语句需要拼接别的字符串的时候先用?代替,然后再添加进去阿?
     ChDw(米)  能不能具体说说?^_^
      

  6.   

    Query1981:
     对工户如何授权丫?能不能给个操作的例子?
      

  7.   

    对访问的用户(公户,呵呵)进行授权件的数据库中做的,用grant命令也可以,当然也可以在java中授权。
    这种问题也不只是SQL语句的问题,也有你传递值的时候没有正确的处理。比如你用
    PrapredStatement pre=con.prapreStatement(SQL);
    string field1=textfield.getText();
    pre.setString(1,field1);
    这个时候假如你在那个文本框中输入数据的时候,先在前面打几个空格,然后再输入数据,这个时候如果你还象上面那样处理,就会出现问题了。结果写到数据库中的值前面有空格,然后你查询的时候和前面没有空格的记录是不相同的。
    所以说光处理SQL也不一定能解决问题,处处小心,任何一个地方是不可能解决的。