- Home
- Categorie
- Coding e Sistemistica
- Altri linguaggi per il web
- [Servlet] nn riesco a fare update SQL
-
[Servlet] nn riesco a fare update SQL
Allora ho un metodo creaSQL() che crea una stringa SQL, stringa perfettamente funzionante perchè l'ho incollata direttamente nella finesta MySQL ed effettua l'upgrade:
INSERT INTO q (id_u, id_q, id_d, p) VALUES(1, 4, 2, 1), (1, 4, 3, 2), (1, 4, 1, 3)
Supponiamo quindi che quindi il metodo creaSQL sia così:
protected String creaSQL(int id_usr) throws ClassNotFoundException, SQLException { String sql = "INSERT INTO q (id_u, id_q, id_d, p) VALUES(1, 4, 2, 1), (1, 4, 3, 2), (1, 4, 1, 3)"; return sql; }
Fin qui sembrerebbe tutto ok, ora all'interno della servlet avrò un altro metodo che prende la stringa sql e la deve eseguire:
protected String execQuery(int id_usr) throws ClassNotFoundException, SQLException { String msg="dentro"; String sql = creaSQL(id_usr); Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("url","user","pass"); Statement st = conn.createStatement(); int query = st.executeUpdate(sql); if (query==1) { msg = "OK..."; } else { msg = "C'è stato un errore!!!"; } //conn.close(); return msg; }
Ma in return nn mi da nulla, manco "dentro". Se invece commento tutta la parte di codice in rosso, la parola "dentro" mi viene restituita.
Dove sbaglio???
-
sicuro che id_usr abbia un valore e non mandi in crash il metodo creaSQL?
-
Approfitterei per segnalare Hibernate ... è indubbiamente più tosto da apprendere e configurare ma ti dimentichi problemi di questo tipo
-
Hai risolto il problema?
Ma che tipo di Exception ti da? Controlla la console cosa ti indica.