Ciao a tutti , sono alle "seconde armi" con il linguaggio Java e mi trovo con questo problema ;
Faccio una ricerca con qualche left join e, mentre dal prompt di DOS mi risponde restituendomi i dati richiesti,implementando la cosa in Java e, sorpreso, dopo aver messo una System.out.prinln("Res",+res) mi restituisce res=false!!!
Vi posto la query che faccio dal prompt ed il pezzo di codice ...
Grazie in anticipo
SELECT fcpro,fcnpi,gpdes,d4des,d4de1,d4de2 FROM CLIENT left join gespag on gpcod='RD00' left join destin on (d4cod='00000867' and d4ser=0) WHERE fccod=00000867;
try
{
query = "SELECT fcpro,fcnpi,gpdes,d4des,d4de1,d4de2 FROM CLIENT left join gespag on gpcod='"+sCpg+"' left join destin on (d4cod='"+sCli+"' and d4ser="+sDest+") WHERE fccod="+sCli+"";
System.out.println("Faccio "+query);
String sDriver = ("jdbc:firebirdsql:127.0.0.1/3050:" + sPathDB);
Driver drv = null;
Connection conn = null;
Statement stm = null;
ResultSet res = null;
try {
Class.forName("org.firebirdsql.jdbc.FBDriver");
}
catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
conn = DriverManager.getConnection(sDriver, DB_USER, DB_PASS);
stm = conn.createStatement();
res = stm.executeQuery(query);
System.out.println("Res "+res.next());
while (res.next())
{
System.out.println("Ho trovato il record");
++trovato;
sPro = res.getString("fcpro");
sPiva= res.getString("fcnpi");
sPaga = res.getString("gpdes");
sDe1 = res.getString("d4des");
sDe2 = res.getString("d4de1");
sDe3 = res.getString("d4de2");
System.out.println("Dati "+sCli+" "+sDesCli+" "+sInd+" "+sCit+" "+sPro+" "+sPaga);
break;
}
res.close();
stm.close();
conn.close();
}
catch (SQLException e) {}
Tutte le variabili nonchè il sPath sono ampiamente esatti ...