通过java返回“java.lang.NullPointerException”的SQL查询

时间:2017-05-26 11:55:31

标签: java mysql database

try{  
    Class.forName("com.mysql.jdbc.Driver");  
     con=DriverManager.getConnection("jdbc:mysql://localhost/phpMyAdmin/Database_Name","root","");  
     stmt=con.createStatement(); 
    }

这是我用我的计算机和数据库建立连接的代码,之后我从用户那里收到用户名和密码然后执行此查询

try {
      rs=stmt.executeQuery("SELECT * FROM d
      teacher_info WHERE UserName 
       = '"+userName+"' AND teacher_info.password 
        ="+password);
    }

问题在于每当我执行查询时,我都会得到 java.lang.NullPointerException连续3次 关于为什么会发生这种情况的任何想法?

1 个答案:

答案 0 :(得分:4)

您的查询和代码存在多个问题

  1. 此处缺少空格= '"+userName+"' AND teacher_info

  2. 您无法访问另一个表格列teacher_info.password,就像没有某种JOINjoin所述表格一样)

  3. 不要像这样连接用户输入而是使用参数化查询来避免 SQL注入攻击

  4. 在此'

  5. 上也缺少单引号.password ="+password);