java - 无法从 Java 将文本添加到 mysql 表

标签 java mysql jdbc

我正在尝试从 Java 中的文本框添加 MySQL 中的字符串。我从不同的网站尝试了很多方法,但没有用。

我一直在尝试将字符串添加到我的数据库中,并且已经浪费了一整天的时间。我的数据库名称是icseCorner我的表名是users 。请帮我解决这个问题。

这是我到目前为止所做的 -

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

    String fname = jTextField1.getText();
    String mname = (jTextField2.getText());
    String lname = (jTextField3.getText());
    String add = (jTextArea1.getText());
    String sch = (jTextField4.getText());
    String usr = (jTextField9.getText());
    String psw = (new String(jPasswordField1.getPassword()));
    String email = (jTextField10.getText());
    String mob = (jTextField11.getText());
    String dist = (jTextField12.getText());
    String state = ((String) jComboBox1.getSelectedItem());
    String gen = "";

    if (jRadioButton1.isSelected())
      gen = (jRadioButton1.getText());
    else if (jRadioButton2.isSelected())
      gen = (jRadioButton2.getText());

    try {

      Class.forName("com.mysql.jdbc.Driver");
      Connection con = DriverManager.getConnection(URL, USER, PASSWORD);
      String sql = "INSERT INTO users (firstName, middleName, lastName, district, mobile, gender, statae, email, password, username, school, address) values (?,?,?,?,?,?,?,?,?,?,?,?)";
      PreparedStatement myStmt = con.prepareStatement(sql);
      myStmt.setString(1, fname);
      myStmt.setString(2, mname);
      myStmt.setString(3, lname);
      myStmt.setString(4, add);
      myStmt.setString(5, sch);
      myStmt.setString(6, usr);
      myStmt.setString(7, psw);
      myStmt.setString(8, email);
      myStmt.setString(9, mob);
      myStmt.setString(10, dist);
      myStmt.setString(11, state);
      myStmt.setString(12, gen);
      myStmt.executeUpdate();
      JOptionPane.showMessageDialog(null, "Registered successfull!");
    } catch (Exception e) {

    }
}

最佳答案

尝试按照列出表格字段的顺序设置准备好的语句字符串(即名字、中间名、姓氏、地区、手机、性别、身份、电子邮件、密码、用户名、学校,地址)。

<小时/>
String sql = "INSERT INTO users (firstName, middleName, lastName, district, mobile, gender, statae, email, password, username, school, address) values (?,?,?,?,?,?,?,?,?,?,?,?)";
PreparedStatement myStmt = con.prepareStatement(sql);
myStmt.setString(1, fname);
myStmt.setString(2, mname);
myStmt.setString(3, lname);
myStmt.setString(4, dist);
myStmt.setString(5, mob);
myStmt.setString(6, gen);
myStmt.setString(7, state);
myStmt.setString(8, email);
myStmt.setString(9, psw);
myStmt.setString(10, usr);
myStmt.setString(11, sch);
myStmt.setString(12, add);

关于java - 无法从 Java 将文本添加到 mysql 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51346241/

相关文章:

java - primefaces requiredMessage 在 p :autoComplete moved into custom component 时丢失

php - laravel 5.8 Eloquent : has many relations model

java - 检查数据库中是否存在日期

java - 为什么我的Font是从文件创建的,为什么还要调用GraphicsEnvorinment.registerFont()?

java - 将 @Stateful 注入(inject) MDB 是否合法?

mysql - SQL 问题涉及已解决的挑战数量

mysql - 如何使用 join 优化查询

java - DatabaseMetaData 接口(interface)不起作用?

postgresql - Postgres 触发器语法

Java:使用 Apache commons-IO 2.4 在子目录中递归列出文件