Hola estoy haciendo un programa de login, que pide usuario y pass, y si los datos ingresados corresponden a los de la tabla, entonces mostrará un mensaje.
El código de conexión lo compilé y no lanzó ningún error, supongo que significa que está correcto. Pero tengo problemas con la clase Consultas, me dice que el problema está acá (dice que no existen los métodos getNombre y getContraseña), algunas partes del código las extraje de otro lado, supuse que eran funciones de alguna librería:
String sql = "insert into app.LOGIN values ('"+ d.getNombre() +"', '"+ d.getContraseña() +"')";
st = conn.getConnection().createStatement();
Código Conexión con la bd:
Conectar:
package base;
import java.sql.*;
public class Conectate {
Connection conn = null;
public void Conectate(){
try{
Class.forName("conn.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/datos","lain0x","");
if(conn!=null)
{
System.out.println("conexión lista");
}
}
catch(SQLException e){
System.out.println(e);
}
catch(ClassNotFoundException e){
System.out.println(e);
}
}
public Connection getconnetion(){
return conn;
}
public void desconectar(){
conn=null;
}
}
Código Consultar:
package base;
import javax.swing.JOptionPane;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.PreparedStatement.*;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
public class Consultas{
static Conectate conn;
static Statement st;
public static void Login(Ventana d){
try {
conn = new Conectate();
String sql = "insert into app.LOGIN values ('"+ d.getNombre() +"', '"+ d.getContraseña() +"')";
st = conn.getConnection().createStatement();
int res = st.executeUpdate(sql);
System.out.println(res);
if (res == 1) {
JOptionPane.showMessageDialog(null, "Nombre Valido");
}
conn.desconectar();
}catch (SQLException ex) {
JOptionPane.showMessageDialog(null, ex.getMessage());
}
}
}
Hola, ni mire el codigo para conectarte SQL
pero estas seguro que esta consulta es correcta???
String sql = "insert into app.LOGIN values ('"+ d.getNombre() +"', '"+ d.getContraseña() +"')";
yo que tu imprimiria esa consulta con System.out y la verificaria con phpmyadmin o phppgadmin (segun el caso)
Si no puedes revisar su sintaxis, te dejo la documentación de MySQL y PostgreSQL
http://dev.mysql.com/doc/refman/5.0/es/insert.html
http://www.postgresql.org/docs/8.1/static/sql-insert.html
Ahora leyendo un poco, d es un objeto tipo Ventana y por lo que dices al parecer ni getNombre() ni getContraseña() (con tilde?? D: ) no estan definidos en Ventana, en ese caso te recomiendo que revises el codigo fuente de Ventana.
Saludos!!!
mmm... pues porque no existe el metodo getNombre ni getContesena?
XD.... no estaria mal que pegues la clase Ventana, o almenos asegurate de que en ella exista la clase getNombre y getContrasena, xq al parecer no es la conexion la que falla
LEyendo un poco el codigo encontre un par d errores, primero q el metodo getConnection, figura getconnetion, error d sintaxion no t va a devolver la conexion...
Segundo, la variable conn q utilizas en las dos clases tendrian q llamarse d manera diferente(Connection, conectate), en login cambiale el nombre, solamente "con" por ejemplo .
Estuve viendo q sacast parte d mi conexion :P
con respecto a ...
String sql = "insert into app.LOGIN values ('"+ d.getNombre() +"', '"+ d.getContraseña() +"')";
st = conn.getConnection().createStatement();
Faltaria q desarrolles la clase Ventana en la cual tendrias q definir los metodos getNombre y getContraseña