Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Ausnahme abgefangen:java.sql.SQLException:Die Spaltenanzahl stimmt nicht mit der Wertanzahl in Zeile 1 überein

Es empfiehlt sich, PreparedStatement zu verwenden statt Statement . Es wird Ihnen helfen, die sql injection zu verhindern Anschläge. Versuchen Sie, PreparedStatement zu erstellen wie -

String updateString ="INSERT INTO deductions (empId, dedId, dedName, dedAmount, dedDate) VALUES (?,?,?,?,?)";

    PreparedStatement preparedStatement = conn.prepareStatement(updateString);

    preparedStatement.setInt(1, empId);
    preparedStatement.setInt(2, dedId);
    preparedStatement.setString(3, dedName);
    preparedStatement.setDouble(4, dedAmount);
    preparedStatement.setDate(5, dedDate);

    preparedStatement .executeUpdate();