Newsgroup: it.comp.java
Titolo: java.sql.SQLException : No data Found

Ecco il msg di errore che ricevo quando stampo un campo di  determinati
record .
     java.sql.SQLException : No data Found
Allego la riga che genera l'errore (che ripeto non si verifica con tutti i
record)
if (rs.getString(3) != null)
              out.println("Descrizione : " + rs.getString(3) + "<BR><BR>");
Aiutatemi vi prego
______
Flex

Ma la usi la rs.next() ?
"Flex" <flex...@Mfreemail.it> ha scritto nel messaggio
news:9g1qvv$ad8$1...@lacerta.tiscalinet.it...


Per essere preciso non funziona mai (tranne quado il campo è vuoto) e il
campo sul DB (SQL Server 2000) è un VarChar di lunghezza 70 .
______
Flex

Devi fare:
if (rs.next())
    out.println("Descrizione : " + rs.getString(3) + "<BR><BR>");
"Flex" <flex...@Mfreemail.it> ha scritto nel messaggio
news:9g1s5j$apj$2...@lacerta.tiscalinet.it...


Oppure
while (rs.next())
    out.println("Descrizione : " + rs.getString(3) + "<BR><BR>");
"Flex" <flex...@Mfreemail.it> ha scritto nel messaggio
news:9g1s5j$apj$2...@lacerta.tiscalinet.it...


Lo faccio all'inizio , non l'ho postato perchè tra quell'istruzione e quella
che genera l'errore ci sono le istruzioni che stampano : Codice Articolo ,
prezzo , Descrizione , Marca .....
quindi non credo sia quello l'errore , tanto + che gli altri campi vengono
stampati correttamente
--
______
Flex
"Flex" <flex...@Mfreemail.it> ha scritto nel messaggio
news:9g1s5j$apj$2...@lacerta.tiscalinet.it...


allora per controllare se un campo è null devi usare
String app
app = rs.getString(3);
if (rs.wasNull())
    out.println("Descrizione : " + app +"<BR><BR>");
prova
ciao
"Flex" <flex...@Mfreemail.it> ha scritto nel messaggio
news:9g1sng$jar$1...@pegasus.tiscalinet.it...


 ha scritto nel messaggio
news:9g1t1h$275u$1...@stargate1.inet.it...


Sono proprio uno stupido !!! Il problema è sempre lo stesso :
quando faccio l'if prendo il dato da rs , quindi non posso + richiederlo ;
soluzione ; usare una variabile dove copiare il dato :-)
Spero che mi serva da lezione
______
Flex
"Flex" <flex...@Mfreemail.it> ha scritto nel messaggio
news:9g1s5j$apj$2...@lacerta.tiscalinet.it...


> quando faccio l'if prendo il dato da rs , quindi non posso + richiederlo ;
questa mi giunge nuova, se non fai un res.next() puoi accedere al dato della
riga in questione tutte le volte che vuoi
ciao

 riga in questione tutte le volte che vuoi
Nella documentazione di Recordset di Java e' specificato che
l'informazione deve essere letta una sola volta. Puo' darsi che
diversi driver implementino in modo diverso la cosa, comunque
con Oracle non puoi farlo (a meno che non abbiano cambiato il driver
ultimamente).
Davide

 ha scritto nel messaggio
news:9g9moi$7mbq0$1...@ID-18487.news.dfncis.de...


 andare aventi e indietro.
Se il driver lo supporta si', altrimenti ricevi un errore di
"operazione non supportata dal driver". In generale occorre preventivare
di usare il sistema piu' stupido possibile, perche' e' quello che e'
sempre presente.
Davide

dinamica delle variazioni effettuate in quella tab. o meno ....
Resta sempre da vedere se poi il driver e il DBMS supportano tutte
queste feature: ad esempio con il jdbc-odbc sono quasi sicuro che te
le scordi (ma mi piacerebbe essere smentito).
-- 
Ciao
	Fabrizio C.