Adesso mi da altri errori su casa_aut che mi dice che è sconosciuto il valore casa_aut, rimetto il codice modificato.( avevo sbagliato a mettere comunque, modello non esisteva nel database di mysql).
1)Classe main:
codice:
package progetto;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Grafica
{
public static void main(String[] args) throws Exception
{
DataAccess a= new DataAccess();
a.aggiungiAutomobile();
}
}
2)Classe connessione
codice:
package progetto;
import java.sql.*;
public class DBUtils
{
public static PreparedStatement getPreparedStatement(String sql) throws SQLException, ClassNotFoundException
{
PreparedStatement ps=null;
Class.forName("com.mysql.cj.jdbc.Driver");
String url= "jdbc:mysql://localhost:3306/progettodatabase?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=CET";
String user= "root";
String pass= "21marzo1995";
Connection con= DriverManager.getConnection(url, user, pass);
ps=con.prepareStatement(sql);
return ps;
}
}
3)classe coi metodi delle query
codice:
package progetto;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;
public class DataAccess {
public void aggiungiAutomobile() throws Exception {
String codice;
String modello;
String casa_aut;
String cf_acquirente;
String cf_vend;
int nrposti;
double prezzo;
System.out.println("Inserisci valori");
Scanner s = new Scanner(System.in);
System.out.println("Inserisci codice:");
codice=s.nextLine();
System.out.println("Inserisci casa automobilistica");
casa_aut=s.nextLine();
System.out.println("Inserisci CF dell'acquirente");
cf_acquirente=s.next();
System.out.println("Inserisci CF del venditore");
cf_vend=s.next();
System.out.println("Inserisci il numero di posti dell'automobile");
nrposti=s.nextInt();
System.out.println("Inserisci il prezzo");
prezzo=s.nextDouble();
s.close();
try {
PreparedStatement ps= DBUtils.getPreparedStatement("insert into Automobile (codice, casa_aut, cf_acquirente, cf_vend, nrposti, prezzo) values(?,?,?,?,?,?)"); //ci vuole un punto interrogativo per ogni parametro
ps.setString(1, codice);
ps.setString(2, casa_aut);
ps.setString(3, cf_acquirente);
ps.setString(4, cf_vend);
ps.setInt(5, nrposti);
ps.setDouble(6, prezzo);
ps.executeUpdate();
} catch (SQLException ex) {
Logger.getLogger(DataAccess.class.getName()).log(Level.SEVERE, null, ex);
}
}
}