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

    [JAVA] Problema con INSERT INTO

    Ciao a tutti, sto sviluppando un piccolo programma di gestione cliente, ma sto avendo problemi con l'istruzione INSERT, vi posto il codice e l'errore così vi sarà tutto più chiaro.

    codice:
    public void inserisciCliente(){
    		try{
    			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                Connection con=DriverManager.getConnection("jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ="+this.ottieniPercorso());
    		    String sql = new String ("INSERT INTO cliente (nome,cognome,codiceF,dataNascita,luogoNascita,recapito1,recapito2,recapito3,email,residenza,note) "
    		    		+ "VALUES (?,?,?,?,?,?,?,?,?,?,?)");
    		    PreparedStatement cmd = con.prepareStatement(sql);
    		      //PASSAGGIO ATTRIBUTI AL DATABASE
    		      cmd.setString(1, this.nome);
    		      cmd.setString(2, this.cognome);
    		      cmd.setString(3, this.codiceF);
    		      cmd.setString(4, this.dataNascita);
    		      cmd.setString(5, this.luogoNascita);
    		      cmd.setString(6, this.recapito1);
    		      cmd.setString(7, this.recapito2);
    		      cmd.setString(8, this.recapito3);
    		      cmd.setString(9, this.email);
    		      cmd.setString(10, this.residenza);
    		      cmd.setString(11, this.note);
    		      cmd.executeUpdate();
    		      con.close();
    		      JOptionPane.showMessageDialog(null, "Inserimento riuscito con successo!");
    		}catch(SQLException | ClassNotFoundException e){
    			JOptionPane.showMessageDialog(null, "Inserimento non riuscito!");
    			e.printStackTrace();
    		}
    	}
    e questo è l'errore che genera:

    codice:
    java.sql.SQLException: [Microsoft][Driver ODBC Microsoft Access] Errore di sintassi nell'istruzione INSERT INTO.
    	at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
    	at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
    	at sun.jdbc.odbc.JdbcOdbc.SQLExecute(Unknown Source)
    	at sun.jdbc.odbc.JdbcOdbcPreparedStatement.execute(Unknown Source)
    	at sun.jdbc.odbc.JdbcOdbcPreparedStatement.executeUpdate(Unknown Source)
    	at Cliente.inserisciCliente(Cliente.java:51)
    	at Gui$2.actionPerformed(Gui.java:265)
    	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    	at java.awt.Component.processMouseEvent(Unknown Source)
    	at javax.swing.JComponent.processMouseEvent(Unknown Source)
    	at java.awt.Component.processEvent(Unknown Source)
    	at java.awt.Container.processEvent(Unknown Source)
    	at java.awt.Component.dispatchEventImpl(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Window.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    	at java.awt.EventQueue.access$200(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue.dispatchEvent(Unknown Source)
    	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.run(Unknown Source)
    premetto che ho controllato il database svariate volte e il nome della tabella (cliente) e il nome e il numero di campi corrispondono perfettamente.

    Quindi non ho idea di che cavolo potrebbe essere.

    Vi ringrazio anticipatamente,

    siete i migliori!

  2. #2
    ma infatti ti dice che è sbagliata la sintassi.
    hai provato a dare un'occhiata qua?
    http://office.microsoft.com/it-it/ac...001231488.aspx

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    non è che dataNascita nel database sia in un formato un po' più consono dello String che stai provando a passare?
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Se non ricordo male la parola

    note

    è riservata per Access. Prova a scrivere nella stringa di INSERT

    ...,residenza,[note]) "
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Se non ricordo male la parola

    note

    è riservata per Access. Prova a scrivere nella stringa di INSERT

    ...,residenza,[note]) "
    Oregon avevi ragione il problema stava proprio li, infatti non capivo quale poteva essere il problema perchè l'istruzione era scritta correttamente!!

    E' pazzesco come certe volte delle cretinate ti facciano diventare scemo.

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.