HI
Я сделал метод в своем классе:
public void addInfo(String username, String password, String name, String family) {
try {
String sql = "INSERT INTO user VALUES (?, ?, ?, ?)";
PreparedStatement pst = conn.prepareCall(sql);
pst.setString(1, username);
pst.setString(2, password);
pst.setString(3, name);
pst.setString(4, family);
int nRecords = pst.executeUpdate();
logger.info("User Added Successfully...");
} catch (SQLException ex) {
logger.info("ERROR in adding user");
ex.printStackTrace();
}
}
А потом я получаю это в своем классе addInfo:
private void AcceptButtonActionPerformed(java.awt.event.ActionEvent evt) {
String name = NameField.getText().trim();
String family = FamilyField.getText().trim();
String username_signup = UsernameSignUp.getText().trim();
String password = new String(PasswordSignUp.getPassword()).trim();
if ((name == null ? "" == null : name.equals("")) || (family == null ? "" == null : family.equals("")) || (username_signup == null ? "" == null : username_signup.equals("")) || (password == null ? "" == null : password.equals(""))) {
JOptionPane.showMessageDialog(this, "Fill the blanks...", "WARNING", JOptionPane.WARNING_MESSAGE);
clearAll();
NameField.grabFocus();
return;
} else {
UserManager um = new UserManager();
um.addInfo(username_signup, password, name, family);
FirstPage fp = new FirstPage();
this.setVisible(false);
fp.setVisible(true);
}
}
Но я сталкиваюсь с этими исключениями:
run:
Jan 9, 2010 3:54:20 PM DBManager.UserManager addInfo
INFO: ERROR in adding user
java.sql.SQLException: Unable to retrieve metadata for procedure.
at com.mysql.jdbc.CallableStatement.extractProcedureName(CallableStatement.java:1076)
at com.mysql.jdbc.CallableStatement.determineParameterTypes(CallableStatement.java:1026)
at com.mysql.jdbc.CallableStatement.<init>(CallableStatement.java:83)
at com.mysql.jdbc.Connection.prepareCall(Connection.java:1204)
at com.mysql.jdbc.Connection.prepareCall(Connection.java:1181)