Allora la query che mi da problema è di una semplicità disarmante eppure mi riserva un comportamento anomalo. Cose da uscire pazzi, proprio perché l'editor non da errori e nemmeno provando online sul server locale da errori, però semplicemente la query non funziona come dovrebbe...Spero che qualcuno con più occhio o più esperienza di me riesca ad individuare la soluzione.

Ecco il codice della query SQL:

codice:
 public int RisaliIDCorsoServizio (String Nome) throws ClassNotFoundException, SQLException {
		       
	 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
         Connection connection = DriverManager.getConnection("jdbc:odbc:Palestra");
         Statement st = connection.createStatement();
					
		 String SQL = "SELECT * FROM CorsoServizio WHERE Nome = '" + Nome + "'";
			   ResultSet rs = st.executeQuery(SQL);
			   
			   int ID = 0;
			   
			   while (rs.next()){			   
			         ID = rs.getInt("ID");
			   }
			   connection.close();
			   return ID; 
	    }
Come vedete nulla di complicato...Questo metodo riceve una stringa contenente il nome di un corso o un servizio e deve risalire al suo ID che è la chiave della tabella CorsoServizio.

Ho provato in mille modi diversi ma il problema a quanto pare sta nel confronto delle stringhe. Mi spiego meglio, facendo la prova e mettendo direttamente il nome senza variabile tipo: WHERE NOME = 'Aerobica'"; mi risale all'ID esatto di Aerobica e tutto funziona...Ma se vado a sostituire con la variabile che passo non trova risultati la query e mi torna ID = 0.

Prima di ogni cosa ho già controllato che il parametro passato arriva correttamente quindi non è quello il problema.

Aiutoooooooo pleaseeee