Ciao a tutti, il mio programma dovrebbe leggere un file excel, effettuare una query su di esso e scriverne il risultato in un file di testo.
Se lo eseguo non mi scrive i dati sul file di testo ed in output mi fornisce solo la prima riga valida della query e l'errore sql:
Io volevo estrarre tutte le righe con Numero non nullo..codice:PIPPOnull123456 Errore Estrazione dati da Excel.. java.sql.SQLException: No data found![]()
Il file Excel nel Foglio1 ha 3 colonne: Nome Email e Numero.
Vi riporto l'intero file di seguito:
Sapete dirmi dove sbaglio?codice:import java.sql.Connection; import java.sql.Statement; import java.sql.ResultSet; import java.sql.DriverManager; import java.io.*; public class LeggereExcel3 { public static void main( String [] args ) { Connection c = null; Statement stmnt = null; try { File f=new File("prova.txt"); FileOutputStream fos=new FileOutputStream(f); PrintStream ps=new PrintStream(fos); Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" ); c = DriverManager.getConnection( "jdbc:odbc:prova_excel", "", "" ); stmnt = c.createStatement(); String query = "SELECT [Nome],[Email],[Numero] FROM [Foglio1$] where Numero IS NOT NULL;"; ResultSet rs = stmnt.executeQuery( query ); ps.println("DATI ESTRATTI:\n"); while( rs.next() ){ System.out.println(rs.getString( "Nome")+rs.getString( "Email")+rs.getString( "Numero")); //name,surname,description,sex,birthdate,email,options,intprefix,opprefix,number,valid,checkedon ps.println(","+rs.getString("Nome")+","+","+","+","+rs.getString( "Email" )+","+","+","+rs.getString( "Numero")+","+","); } } catch( Exception e ){ System.out.println("Errore Estrazione dati da Excel.. "+e); } finally { try { stmnt.close(); c.close(); } catch( Exception e ){ System.err.println( e ); } } } }
Grazie in anticipo,
Mauro.

Rispondi quotando