Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    java.sql.SQLException: General error

    Ciao a tutti!
    Sto sviluppando una piccola applicazione che si connette ad un db...ieri a casa funzionava tutto, oggi arrivo in ufficio (con quella versione) e mi esce l'errore in oggetto:

    java.sql.SQLException: General error
    at sun.jdbc.odbc.JdbcOdbc.throwGenericSQLException(Jd bcOdbc.java:7087)
    at sun.jdbc.odbc.JdbcOdbc.SQLAllocStmt(JdbcOdbc.java: 174)
    at sun.jdbc.odbc.JdbcOdbcConnection.createStatement(J dbcOdbcConnection.java:413)
    at sun.jdbc.odbc.JdbcOdbcConnection.createStatement(J dbcOdbcConnection.java:396)
    at db.ConnessioneMenuApplicazione.alterTTTicket(Conne ssioneMenuApplicazione.java:120)
    at app.Main.main(Main.java:100)

    java.sql.SQLException: General error
    at sun.jdbc.odbc.JdbcOdbc.throwGenericSQLException(Jd bcOdbc.java:7087)
    at sun.jdbc.odbc.JdbcOdbc.SQLAllocStmt(JdbcOdbc.java: 174)
    at sun.jdbc.odbc.JdbcOdbcConnection.prepareStatement( JdbcOdbcConnection.java:465)
    at sun.jdbc.odbc.JdbcOdbcConnection.prepareStatement( JdbcOdbcConnection.java:443)
    at db.ConnessioneMenuApplicazione.alterTTEmail(Connes sioneMenuApplicazione.java:135)
    at app.Main.main(Main.java:101)


    questi errori si riferiscono a 2 metodi che vengono richiamati nella main:

    codice:
    public void alterTTTicket(String odbcDriver, String user, String pass){
    		try {
    			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    			mssSqlServerConnection = DriverManager.getConnection("jdbc:odbc:" + odbcDriver, user, pass);
    			String alter = "ALTER TABLE tt_ticket ADD indirizzo_0 varchar(200) NULL,indirizzo_1 varchar(200) NULL,indirizzo_2 varchar(200) NULL,indirizzo_3 varchar(200) NULL,indirizzo_4 varchar(200) NULL,indirizzo_5 varchar(200) NULL,indirizzo_6 varchar(200) NULL,indirizzo_7 varchar(200) NULL,indirizzo_8 varchar(200) NULL,indirizzo_9 varchar(200) NULL;";
    			//PreparedStatement ps = accessConnection.prepareStatement(alter);
    			//ps.executeUpdate();
    			Statement st = accessConnection.createStatement();
    			st.execute(alter);
    			System.out.println("Modificata tabella tt_ticket: inseriti i campi indirizzo_0 ... indirizzo_9");
    			mssSqlServerConnection.close();
    		}catch (Exception e){
    			System.out.println("Connessione Alter table fallita");
    			e.printStackTrace();
    		}	
    	}
    	public void alterTTEmail(String odbcDriver, String user, String pass){
    		try {
    			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    			mssSqlServerConnection = DriverManager.getConnection("jdbc:odbc:" + odbcDriver, user, pass);
    			//System.out.println("ConnessioneFunzione OK ad Access");
    			String alter = "ALTER TABLE tt_email ADD flg_letto smallint NOT NULL DEFAULT 0;";
    			PreparedStatement ps = accessConnection.prepareStatement(alter);
    			ps.executeUpdate();
    			System.out.println("Modificata tabella tt_email: inserito il campo flg_letto");
    			System.out.println("");
    			System.out.println("*********************** ATTENZIONE *************************");
    			System.out.println("E' necessario aggiungere manualmente alla vista V_TT_EMAIL il campo flg_letto");
    			mssSqlServerConnection.close();
    		}catch (Exception e){
    			System.out.println("Connessione Alter table fallita");
    			e.printStackTrace();
    		}	
    	}
    Le connessioni al db funzionano perchè sono le stesse che utilizzano altri metodi e non danno nessun errore...quale può essere il problema?

    Grazie!



    EDIT: scusate ho risolto. Le parti di codice in grassetto erano sbagliate, le ho sostituite con mssSqlServerConnection

    thread chiuso

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Moderazione

    Originariamente inviato da christian78
    EDIT: scusate ho risolto. Le parti di codice in grassetto erano sbagliate, le ho sostituite con mssSqlServerConnection
    thread chiuso
    Beh, se vuoi eliminarlo direttamente, fai pure.

    Sarebbe stato più utile inserire un nuovo messaggio, invece di modificare il precedente, per avere così la domanda (con il codice errato) e la relativa soluzione, per coloro che dovessero trovarsi in futuro ad affrontare lo stesso problema.

    In breve, non è così che si utilizza un forum.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Ho pensato di editare per evitare di scrivere un messaggio "inutile" avendo aperto il thread da meno di 5 minuti...cmq hai ragione vedendo la discussione in chiave futura.

    In ogni caso però la discussione che ho aperto non si riferisce a jsp...ma a java in generale...e poi scrivere SQLException mi sembrava già abbastanza eloquente sul fatto che si trattasse di un errore riferito a un database

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.