Problema consulta no mysql

4 respostas
C

Pessoal, tenho problema no script... Ele tá aparecendo em baixo

Conexão de dados criada
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'demokopp' in 'where clause'

Connection conn = null;
           try
           {
               String userName = "root";
               String password = "12345";
               String url = "jdbc:mysql://localhost:3306/kopp";
               Class.forName ("com.mysql.jdbc.Driver").newInstance ();
               conn = DriverManager.getConnection (url, userName, password);
               System.out.println ("Conexão de dados criada");
               //System.out.println (""+login+","+senha+"");

            Statement statement = (Statement) conn.createStatement();
            ResultSet rs = statement.executeQuery("SELECT * FROM login WHERE login="+ login );
            if (rs.next()) {
            labelId.setText(rs.getString("id"));
            }
           }
           catch (Exception e)
           {
               e.printStackTrace();
               //System.err.println ("Não é possível conectar ao banco de dados do servidor");
               //JOptionPane.showMessageDialog(null,"Não é possível conectar ao banco de dados do servidor");
           }
           finally
           {
               if (conn != null)
               {
                   try
                   {
                       conn.close ();
                       System.out.println ("Conexão do banco de dado terminada");
                   }
                   catch (Exception e) { /* ignore close errors */ }
               }
           }
e o mysql id, login e senha não sei o que aconteceu no mysql e java... alguem podia me da dica ou tenta corrigir no meu script. :(

4 Respostas

pmlm

Tens de por ’ no login

ResultSet rs = statement.executeQuery("SELECT * FROM login WHERE login='"+ login+"'" );

Ou, mais correcto ainda, usar PreparedStatement.

C

Muito obrigado, ta funcionando bem… nem vi ‘’ riso…
Abraço! :wink:

barney
criscompbr:
Pessoal, tenho problema no script... Ele tá aparecendo em baixo

Conexão de dados criada
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'demokopp' in 'where clause'

Connection conn = null;
           try
           {
               String userName = "root";
               String password = "12345";
               String url = "jdbc:mysql://localhost:3306/kopp";
               Class.forName ("com.mysql.jdbc.Driver").newInstance ();
               conn = DriverManager.getConnection (url, userName, password);
               System.out.println ("Conexão de dados criada");
               //System.out.println (""+login+","+senha+"");

            Statement statement = (Statement) conn.createStatement();
            ResultSet rs = statement.executeQuery("SELECT * FROM login WHERE login="+ login );
            if (rs.next()) {
            labelId.setText(rs.getString("id"));
            }
           }
           catch (Exception e)
           {
               e.printStackTrace();
               //System.err.println ("Não é possível conectar ao banco de dados do servidor");
               //JOptionPane.showMessageDialog(null,"Não é possível conectar ao banco de dados do servidor");
           }
           finally
           {
               if (conn != null)
               {
                   try
                   {
                       conn.close ();
                       System.out.println ("Conexão do banco de dado terminada");
                   }
                   catch (Exception e) { /* ignore close errors */ }
               }
           }
e o mysql id, login e senha não sei o que aconteceu no mysql e java... alguem podia me da dica ou tenta corrigir no meu script. :(
cara não use SQL Injection da uma olhada em uma apostila da Caelum FJ-11 tem um capítulo o 2.11 que fala sobre isso e elimina isso -->
ResultSet rs = statement.executeQuery("SELECT * FROM login WHERE login="+ login );
e não é uma boa prática de programação flw :wink:
M

Use PreparedStatement.

Criado 21 de janeiro de 2010
Ultima resposta 21 de jan. de 2010
Respostas 4
Participantes 4