Telefonino.net network
 
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. NEI PREFERITI .:: | RSS Forum | RSS News | NEWS web | NEWS software |
| PUBBLICITA' | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | CERCA nel FORUM » |

Torna indietro   WinTricks Forum > Software > Programmazione

Notices

Rispondi
 
Strumenti discussione
Vecchio 18-07-2008, 00.25.22   #1
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
[MySQL] SQLException: Before start of result set

Il result set a cui si riferisce è la SELECT dentro l'else, inserendo nel codice della seguente UPDATE il numero che dovrebbe restituirmi la SELECT funziona tutto.
Che problema c'è con quella SELECT?
Codice:
ConnectionManager connection = ConnectionManager.getInstance();
Connection conn = connection.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = null;

rs = stmt.executeQuery("SELECT conto FROM possiede WHERE cliente='"+username+"';");
if(rs.next() == false)
   esitoRicarica = false;
else {
   int conto = rs.getInt("conto");
				
   rs = stmt.executeQuery("SELECT saldo FROM conto WHERE numeroconto="+conto+";");
   double residuo = rs.getDouble("saldo");
   double nuovoSaldo = residuo+importo;
   int count = stmt.executeUpdate("UPDATE conto SET saldo="+nuovoSaldo+" where numeroconto="+conto+";");
   if(count == 0)
      esitoRicarica = false;
   else
      esitoRicarica = true;
}
Alhazred non è collegato   Rispondi citando
Vecchio 18-07-2008, 09.59.38   #2
shadowDK
Senior Member
 
Registrato: 21-03-2008
Loc.: From Lugano (CH)...finally!
Messaggi: 330
shadowDK promette bene
L'unica possibilità è che quella username non esista...per il resto mi sembra corretta...ti consiglio però di usare un PreparedStatement invece dello statement...
Codice:
PreparedStatement pst = conn.prepareStatement("SELECT conto FROM possiede WHERE cliente = ?");
pst.setString(1, username);
rs = pst.executeQuery();
è meglio per questioni di sicurezza (SQL injection) e di leggibilità del codice (nel tuo caso non fa molta differenza, ma se hai molti parametri ti accorgerai della differenza)...

Ultima modifica di shadowDK : 18-07-2008 alle ore 10.07.11
shadowDK non è collegato   Rispondi citando
Vecchio 18-07-2008, 14.03.09   #3
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
L'istruzione è SQL è giusta, perché se la scrivo a mano nella console di mysql mi restituisce il valore che mi aspetto.
Ho risolto facendo un join in questo modo:
Codice:
ConnectionManager connection = ConnectionManager.getInstance();
Connection conn = connection.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = null;
			
rs = stmt.executeQuery("SELECT conto.saldo,possiede.conto FROM conto,possiede WHERE conto.numeroconto=possiede.conto and possiede.cliente='"+username+"';");
if(rs.next() == false)
   esitoRicarica = false;
else {
   int conto = rs.getInt("possiede.conto");
   double residuo = rs.getDouble("conto.saldo");
   double nuovoSaldo = residuo+importo;
   int count = stmt.executeUpdate("UPDATE conto SET saldo="+nuovoSaldo+" where numeroconto="+conto+";");
   if(count == 0)
      esitoRicarica = false;
   else
      esitoRicarica = true;
}
Ho praticamente tolto la select dentro l'else e l'ho inclusa in quella all'inizio.

Per i prepared statement... vedrò di usarli
Grazie.
Alhazred non è collegato   Rispondi citando
Vecchio 18-07-2008, 16.02.24   #4
shadowDK
Senior Member
 
Registrato: 21-03-2008
Loc.: From Lugano (CH)...finally!
Messaggi: 330
shadowDK promette bene
Effettivamente avevo letto male...a te dava problemi sulla select dentro l'else, quindi la username esiste...su db, nella tabella conto, come dichiari numeroconto? Giusto per curiosità...
shadowDK non è collegato   Rispondi citando
Vecchio 18-07-2008, 17.04.38   #5
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
numeroconto int not null auto_increment
Alhazred non è collegato   Rispondi citando
Vecchio 20-07-2008, 19.57.21   #6
dtrrr1ho
Guest
 
Messaggi: n/a
good friend

Bump! thx !

--------------------------------our wow gold site:
buy wow gold,wow gold,wow gold,wow gold,
  Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is ON
Gli smilies sono ON
[IMG] è ON
Il codice HTML è OFF

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
Service pack 1 problemi tr0tj Windows 7/Vista/XP/ 2003 13 05-11-2008 19.29.36
Tidy Start Menu 3.23 Thor Archivio News Software 2 27-11-2006 18.20.05
Tidy Start Menu 3.21 Thor Archivio News Software 0 13-11-2006 11.14.01
Tidy Start Menu 3.0 Thor Archivio News Software 4 08-06-2006 09.19.23
HELP PER IMMAGINI VIRTUALI saveliev Masterizzazione Giochi Games 31 29-04-2004 20.23.48

Orario GMT +2. Ora sono le: 11.57.57.


E' vietata la riproduzione, anche solo in parte, di contenuti e grafica.
Copyright © 1999-2017 Edizioni Master S.p.A. p.iva: 02105820787 • Tutti i diritti sono riservati
L'editore NON si assume nessuna responsabilità dei contenuti pubblicati sul forum in quanto redatti direttamente dagli utenti.
Questi ultimi sono responsabili dei contenuti da loro riportati nelle discussioni del forum
Powered by vBulletin - 2010 Copyright © Jelsoft Enterprises Limited.