Newsgroup: it.comp.java
Titolo: [help] Query via JDBC-ODBC con Access 97 ...

Ciao Castagna,
io metterei '[Aa]%'  perche' * vale solo per Access (mentre tu usi jdbc-odbc
che segue lo standard sql...boh?).
Non sono pero' sicuro che la sintassi [Aa] sia ammessa, fai delle prove.
Un saluto,
Marco.

Ciao Castagna,
non so che dirti, io sto usando felicemente
"SELECT * FROM Insegnamenti WHERE Corso LIKE  'A%'  ORDER BY Corso"
Non e' che c'e' qualche errore di svista sui nomi?
Un saluto,
Marco.

 problemi analoghi, ma forse mi sfugge qualcosa.
I problemi ce li avevo avuti io....
io non uso il LIKE, non ne sapevo nemmeno l'esistenza....
sicuramente č piů giusto il tuo metodo...
perchč anch'io ho una query che non mi funziona(LA METTO SOTTO DOPO)
SOLUZIONE:
-Se devi mettere una variabile:
SELECT * FROM * WHERE variabileneldtabase= ' "+variabiledelprogramma+" '
";
-Se devi mettere dei valori:
SELECT * FROM * WHERE variabiledelprogramma = 2035    ";
- dove 2035 č un palese esempio -
ATTENZIONE AD UNA COSA:
'"+non lasciare spazi tra il piů e l'altro piů, sennň te li prende+"'
------------------
Io ho messo quě sotto del codice che non mi funziona, nel senso....
sicuramente non mi legge il risultato, perchč non mi passa nel ciclo while,
se mi potete aiutare? GRAZIE
----Codice by Roche
 boolean DBConnect(int CODICE){
   boolean ret = false;
   try{
// Creo  il driver
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
file://Apro 1 connessione al database
    Connection connection = DriverManager.getConnection("jdbc:odbc:Riven");
file://Oggetto statement per eseguire una query
 Statement stmt  = connection.createStatement();
file://salvo in una stringa la QUERY
 String querystudio = "SELECT S_COD, DENOMINAZIONE FROM STUDIO WHERE S_COD =
2035";
///Stampo dei dati a video per fare una sottospecie di debug
           out.println("<HTML><HEAD><TITLE>ACCESSO
PREGIATO</TITLE></HEAD>");
           out.println("<BODY>TUTTO VALIDO!!!!!!!!!Codice id: ( " +
DB_CODICE_S + " )<BR><BR><BR>");
           out.println("Se vuoi <A HREF=\"../servlets/login.html\">prova
ancora</A>");
           out.println("</BODY></HTML>");
           out.flush();
file://Oggetto Resultset per leggere il risultato
 ResultSet rs = stmt.executeQuery (querystudio);
 while(rs.next()){
  RS_CODICE_S = rs.getInt("S_COD");
  RS_DENOM    = rs.getString("DENOMINAZIONE");
///Stampo dei dati a video per fare una sottospecie di debug e quě dentro
non ci entra
           out.println("<HTML><HEAD><TITLE>ACCESSO
PREGIATO</TITLE></HEAD>");
           out.println("<BODY>TUTTO VALIDO!!!!!!!!!Codice id: ( " +
RS_CODICE_S+ " )<BR><BR><BR>");
           out.println("<BODY>TUTTO VALIDO!!!!!!!!!Codice id: ( " +
RS_DENOM+ " )<BR><BR><BR>");
           out.println("Se vuoi <A HREF=\"../servlets/login.html\">prova
ancora</A>");
           out.println("</BODY></HTML>");
           out.flush();
    }
             ret = true;
          else
             ret = false;
    return ret;
   }catch (Exception ex){
        System.out.println(ex);
   }
             return ret;
}
--
--
Ciao
                                        Roche
               - The Mannix -
Sei stufo di ascoltare la solita minestra punk?
Clicca quě sotto:
 
http://stage.vitaminic.it/the_mannix/


... ma cosě ti funzionano?
Il mio problema č che devo trovare tutti i record in cui 
un campo inizi con la lettera "a", ad esempio.
Qualcuno utillizzando Access via JDBC-ODBC ha effettuato
con successo una query che utilizzasse LIKE?
Se la query funziona con tutti i database esistenti non
mi spiego perché non funzioni con Accesso!?! :(

Ciao Castagna,
perche' non posti un po' di codice?, magari si scopre l'inghippo.
Come ti ho detto, a me il "like" non ha mai dato problemi (JDBC1 e JDBC2 con
MSAccess).
Ti posto un pezzo del mio, e' facile capire cosa fa (sceglie dei nomi di
esami in base all'iniziale e ad all'anno di corso da una tabella
Insegnamenti)
public static Vector getEsami(String iniziale, int AnnoManifesto) throws
Exception
 {
  Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");
  Connection con = DriverManager.getConnection ("jdbc:odbc:"+database);
  Statement stmt = con.createStatement();
  ResultSet rs = stmt.executeQuery("SELECT * FROM Insegnamenti WHERE Corso
LIKE '"+iniziale+"%' AND AnnoInserimento LIKE '%"+AnnoManifesto+"%' ORDER BY
Corso");
  while(rs.next())
  {
   /*letture varie*/
    }
  rs.close();
  stmt.close();
  con.close();
 return esami;
 }
Un saluto,
Marco.

 Non so più dove sbattere la testa. :(