Quiero iniciar sesión antes de que los usuarios usen mi aplicación

Hola, me preguntaba si podrías ayudarme. Tengo un formulario o marco de inicio de sesión en mi aplicación. Tiene campos de texto de nombre de usuario y contraseña y mi aplicación está conectada para acceder a la base de datos. Quiero que los usuarios inicien sesión antes de que puedan realizar otras cosas en la aplicación. En Visual Basic es pan comido, pero con Java es un trozo de roca, este es el código que tengo

import java.sql.*;

public class Login1 extends  JavaApplication1
{

    private static Connection conn;
    static Statement state;
    public static void login()
    {
        String url = "jdbc:odbc:Java_Testing";            
        try
        {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            conn = DriverManager.getConnection(url);
            System.out.println("The driver was loaded successfully");
        }
        catch(ClassNotFoundException error)
        {
            System.out.println("Unable to load the driver" + error);
        }
        catch(SQLException error)
        {
            System.out.println("Could not connect to the database" + error);
        } 

        try
        {
            String query1 = "SELECT Username , User_Password From Users Where Username = ('"+ JavaApplication1.txtUsername.getText() + "' AND User_Password ='" + JavaApplication1.txtPassword.getText() + "')";
            state = conn.createStatement();

            ResultSet results = state.executeQuery(query1);
            System.out.println("Congradulations you have succefully loged in");                     
        }   
        catch(Exception error)
        {
            System.out.print("Enable to login the user: " + error);
        }            
    }
}

JavaApplication1 es solo otra clase que está manejando todos los eventos y tiene los controles awt.

Cuando ejecuto este código, este es el error que obtengo

Unenable to to login the user: java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

Si tiene una answear, comparta y vuelva a mirar el segundo bloque de prueba, sé que es donde está el problema.

Gracias por adelantado.

Respuesta 1

Tu SQL es incorrecto. Sus corchetes están en el lugar equivocado.

SELECT Username , User_Password From Users 
Where Username = ('txtUsername' AND User_Password ='txtPassword')

Como no parece necesitarlos, eliminaría los corchetes del SQL.

Respuesta: 2

Estoy creando un juego básico de 'Pong'. He terminado el juego, aparte de algunos problemas técnicos que necesito eliminar. El juego funciona perfectamente en netbeans, pero si creo un archivo jar, aparecerán errores y ...

ACTUALIZACIÓN: Resolví este problema exactamente de la misma manera que lo sugirieron mis amigos. Pero me perdí el hecho de que tengo que seguir el protocolo de mysql para obtener el resultado. En mysql siempre hay un ...

Estoy trabajando en un proyecto corto para buscar una cadena para una subcadena especificada usando recursión. He intentado usar varias cadenas y subcadenas, así como hacer que mi código sea lo más simple posible, pero ...

Cuando le pregunto a la propiedad "totalHits" en mi objeto TopDocs, obtengo el número de visitas. Pero quiero saber "cuántos" documentos se encuentran, no los "resultados totales". Ejemplo: - documento 1: campo A: foo bar -...