JAVA + MySQL (Load data infile)

telecom1
15 de Diciembre del 2005
SALUDOS,
TENGO 10 SCRIPTS DE MYSQL QUE DEBEN SER EJECUTADOS CADA HORA. EN MYSQL LO HAGO MANUALMENTE DE FORMA PERFECTA, PERO LA APLICACI脫N DEBE SER EN JAVA.
驴ME AYUDAN? PLEASEEE..
AC脕 EST脕 UN EJEMPLO DE MYSQL:

load data infile 'd:/[email protected]' ignore into table set_mel fields terminated by ','
lines starting by 'SET M:NAME=' terminated by ';'
(M,MID) set BC=@@;

DONDE @@ CORRESPONDE A UN N脷MERO DEL 1 AL 10, ES DECIR, QUE DEBE EJECUTARSE 10 VECES PARA 10 ARCHIVOS DIFERENTES.
ESPERO ME PUEDAN AYUDAR.

rocachondo
15 de Diciembre del 2005
Yo de SQL no entiendo demasiado, pero para trabajar en java con SQL lo que tienes que hacer es incluir el paquete java.sql. B煤scat茅 un manual sobre c贸mo trabajar con este paquete, pero b谩sicamente lo que se hace con 茅l es abrir una conexi贸n a una base de datos y despu茅s ejecutar sentencias SQL directamente.

Te pongo un ejemplo de c贸digo con este paquete, por si es el que te interesa:

String url="jdbc:odbc:usuarios";
Connection con=null;
boolean correcto=false;
ResultSet res=null;
Statement sen=null;

try{
DriverManager.registerDriver(new JdbcOdbcDriver());
con=DriverManager.getConnection(url);
sen=con.createStatement();
if(usuario.isProfesor())
res=sen.executeQuery("SELECT * FROM profesores WHERE usuario LIKE '"+
usuario.getUser()+"'");
else
res=sen.executeQuery("SELECT * FROM alumnos WHERE usuario LIKE '"+
usuario.getUser()+"'");
res.next();
if(usuario.getPassword().equals(res.getString("password")))
correcto=true;

}catch(SQLException e){
System.out.println("Excepci贸n al leer la base de datos: "+e);
}

Si te fijas, lo que hace el programa es crear una conexi贸n a la base de datos "usuario" y dentro de esa base de datos hacer una consulta, que se escribe directamente con la sintaxis de SQL. Tienes que tener cuidado al utilizar c贸digo SQL, pues java te detecta el c贸digo como un String (que es el par谩metro que necesita el m茅todo ExecuteQuery) pero no te revisa la sintaxis de SQL, por lo que se pueden producir excepciones en el programa. Por lo tanto, tienes que depurar bastante bien para que no haya errores