Я работаю над Java и MySQL и не могу исправить ошибки. Я сталкиваюсь с этими ошибками, когда я добавляю нового фермера в таблицу ...
java.sql.SQLException: невозможно вызвать commit, когда autocommit = true
Ошибки ниже
java.sql.SQLException: невозможно вызвать commit, когда autocommit = true
at com.mysql.jdbc.SQLError.createSQLException (SQLError.java:869)
at com.mysql.jdbc.SQLError.createSQLException (SQLError.java:865)
at com.mysql.jdbc.ConnectionImpl.commit (ConnectionImpl.java:1537)
на client.Main.addonething (Main.java:784)
at client.Main.parse_commands (Main.java:123)
at client.Main.main_loop (Main.java:202)
на client.Main.main (Main.java:239)
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: невозможно вызвать откат, когда autocommit = true
at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (собственный метод)
at sun.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java:45)
в java.lang.reflect.Constructor.newInstance (Constructor.java:423)
в com.mysql.jdbc.Util.handleNewInstance (Util.java:425)
на com.mysql.jdbc.Util.getInstance (Util.java:408)
в com.mysql.jdbc.SQLError.createSQLException (SQLError.java:919)
на com.mysql.jdbc.SQLError.createSQLException (SQLError.java:898)
в com.mysql.jdbc.SQLError.createSQLException (SQLError.java:887)
в com.mysql.jdbc.SQLError.createSQLException (SQLError.java:861)
на com.mysql.jdbc.ConnectionImpl.rollback (ConnectionImpl.java:4560)
на client.Main.addonething (Main.java:795)
at client.Main.parse_commands (Main.java:123)
at client.Main.main_loop (Main.java:202)
at client.Main.main (Main.java:239)
Это код подключения к базе данных
public static void addonething(String query, DBConnection dbConnection){
Statement myStmt;
try {
myStmt = dbConnection.getConn().createStatement();
int swichA = 0;
int swichB = 0;
myStmt.execute(query);
System.out.println("To commit the data enter 1");
Scanner in = new Scanner(System.in);
swichB = in.nextInt();
if(swichA != -1 && swichB == 1){
System.out.println();
dbConnection.getConn().commit();
}
else{
System.out.println("it came hear3");
dbConnection.getConn().rollback();
}
} catch (SQLException e) {
System.out.println("it came hear4");
e.printStackTrace();
try {
dbConnection.getConn().rollback();
} catch (SQLException e1) {
System.out.println("it came hear5");
e1.printStackTrace();
}
}}
Ниже приведен метод вставки
public static String frQuery(String second_part){
String data = get_data_from_commands(second_part);
String[] tokens = data.split(",");
String queryf = String.format("insert into farmers" + "
(Name, lastname, Address, zipcode, city, phones, mails)" + "values
('%s','%s','%s','%s','%s','%s','%s')",tokens[0],tokens[1],tokens[2],
tokens[3],tokens[4],tokens[5], tokens[6]);
return queryf;
}