Visualizzazione dei risultati da 1 a 5 su 5

Discussione: DB Select Count

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    207

    DB Select Count

    Come faccio a tirare fuori il valore che di cui ho bisogno da questo codice ?

    String per_guasto = "SELECT COUNT( * )FROM guasto JOIN scheda ON guasto.IDScheda = scheda.IDScheda WHERE Matricola = '"+ matricola +"' AND idgenerale = '"+ stringa[2]+"'";

    Statement provadb5 = connection.createStatement();
    ResultSet risultato5 = provadb5.executeQuery(per_guasto);

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: DB Select Count

    Originariamente inviato da lele85red
    Come faccio a tirare fuori il valore che di cui ho bisogno da questo codice ?

    String per_guasto = "SELECT COUNT( * )FROM guasto JOIN scheda ON guasto.IDScheda = scheda.IDScheda WHERE Matricola = '"+ matricola +"' AND idgenerale = '"+ stringa[2]+"'";

    Statement provadb5 = connection.createStatement();
    ResultSet risultato5 = provadb5.executeQuery(per_guasto);
    Quella query, se ha successo, avrà come risultato 1 riga che contiene 1 sola colonna. Quindi sul ResultSet fai un next() e se ok allora usi ad esempio getInt(1) per ottenere il valore dell'unica colonna.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    207
    ok ora funziona grazie mille

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    207
    altro problema, non capisco perchè questa parte di codice mi manda direttamente al catch finale (nessuna connessione)

    for (int w=0;w<i;w++) {
    String diagramma = "UPDATE diagramma SET id = '"+ w +"', Nome = '"+ stringa[w] +"', Valore='"+ array[w] +"'";
    System.out.println(diagramma);
    Statement provadb6 = connection.createStatement();
    ResultSet risultato6 = provadb6.executeQuery(diagramma);
    }

    array e stringa sono giusti.
    il codice dovrebbe inserire i valori in una tabella in questo modo

    1 prova 5
    2 riprova 7
    ...
    ...

  5. #5
    Innanzitutto sposta la creazione dello statement fuori dal for, non devi ricrearlo ogni volta. Poi parli di 'inserire i valori' mentre poi fai una query di UPDATE. Cosa devi fare? Una INSERT o una UPDATE? Anche perchè per come hai scritto la query ad ogni ciclo aggiorni tutti i valori presenti nella tabella non essendoci alcuna clausola WHERE. Ciò vuol dire che alla fine del for avrai in tabella tutte righe uguali con i valori utilizzati all'ultimo ciclo.
    Infine per eseguire una query sia di INSERT che di UPDATE devi utilizzare il metodo executeUpdate(tuaQuery) e non executeQuery.

    Tutto ciò però non credo risolva il problema dell'eccezione e della mancata connessione. Occorre vedere in che punto del codice c'è l'errore e soprattutto che errore ti restituisce.
    Al mio segnale... scatenate l'inferno!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.