Hola!
Estoy realizando un ejercicio de Jdbc que va de insertar eliminar y hacer select:
Tengo hecha conexion a la BD mediante el JDBC-ODBC Bridge.
Pero no se porque el codigo tiene un fallo que no permite hacer un insert que debiera hacerlo y me salta a un catch del programa principal. Pongo los comentarios de donde falla y porque en negrita en el codigo.
Cuando en el programa principal ejecuto esta instruccion:
Cita: String insert1="INSERT INTO Propietario VALUES ('33333333A','Soraya','Nulo');";
El trozo de codigo del programa principal que quiero ejecutar es:
Cita: Agente a=Agente.obtAgente();
a.d_i_u(insert1); <--No me funciona esta llamada
El codigo JDBC es el siguiente:
Código:
public class Agente {
private static Agente mInstancia=null;
private static Connection mBD;
private Agente() throws Exception {
conectar();
}
public static Agente obtAgente() throws Exception {
if (mInstancia==null) {
mInstancia=new Agente();
}
return mInstancia;
}
private static void conectar() throws Exception {
String url="jdbc:odbc:AgenteBD";
String driver="sun.jdbc.odbc.JdbcOdbcDriver";
try {
Class.forName(driver);
mBD=DriverManager.getConnection(url,"root","");
}
catch (Exception e)
{
System.out.println("Error al conectar con la base de BD."+e);
}
}
public static void desconectar() throws Exception {
try {
mBD.close();
} catch(SQLException sqle) {
System.out.println("Error al cerrar la BD"+ sqle);
}
}
/**
* para hacer deletes , inserts y updates
*/
public int d_i_u(String Sql) throws SQLException, Exception {
Statement sentencia=mBD.createStatement();
int resultado= sentencia.executeUpdate(Sql);<---Aqui me sale el error cuando se hace la llamada de Agente.obtAgente().d_i_u(insert1); el compilador no hace un return resultado, como si no se hubiera ejecutado, y me salta a un catch del programa principal
return resultado;
}
/**
* para hacer selects
*/
public ResultSet select(String Sql) throws SQLException, Exception {
Statement sentencia=mBD.createStatement();
ResultSet r=sentencia.executeQuery(Sql);
return r;
}
Agradeceria mucho que alguien me echara una mano.
S2!