java - 使用 mySQL 的场景构建器

标签 java mysql scenebuilder

请就下面描述的两个问题向我提出建议。

  1. 我在fxml(TextFields)中有表单用于向数据库添加信息。但它不起作用(数据没有记录到数据库) 代码:

    String str="insert into contacts values(?,?,?,?,?)";
    con = javaconectDB.ConectDB(); //загрузка базы
    prep = con.prepareStatement(str);
    
    prep.setString(1, edName.getText());
    prep.setString(2, edLn.getText());
    prep.setString(3, edE.getText());
    prep.setString(4, edP.getText());
    prep.executeQuery();
    db.getData().add(new aWork(edName.getText(), edLn.getText(),edE.getText(),edP.getText()));
    edName.setText(null);edLn.setText(null);
    edE.setText(null);edP.setText(null);
    

    } 其中“db”是java类,它从mysql读取DB,getData() - 是Getter。

  2. ComboBox fxml 不是 JComboBox

     String sql="SELECT NAME FirstName*from contacts";
     javaconectDB jc=new javaconectDB();
      con=javaconectDB.ConectDB();
      prep=con.prepareStatement("SELECT Phone FROM contacts");
      ResultSet   rs=prep.executeQuery();
      while (rs.next()){
      String name=rs.getString("Phone");
      cmbCarrera."..."(name);
    

我想要类似于此代码: cmbCarrera.addItems(名称);

但是如果我使用 ComboBox fxml,我没有编写 addItems 代码,我只有 addEventHandler

我应该做什么或者代码有什么问题? 提前致谢

最佳答案

要操作数据,您需要 executeUpdate(),而不是 executeQuery()

执行更新:

Executes the given SQL statement, which may be an INSERT, UPDATE, or DELETE statement or an SQL statement that returns nothing, such as an SQL DDL statement.

ExecuteQuery 用于返回 ResultSet 的所有语句。

关于java - 使用 mySQL 的场景构建器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35824701/

相关文章:

java - ViewPager、FragmentStatePagerAdapter、ListFragment单独列出每个Fragment的数据

Java 将字符串转换为 BigDecimal

mysql - 当另一个表中存在条目时,更改列中字符串的最后两个字母

java - 如何防止 JavaFX 中的窗口太小?

java - 如何在 Scene Builder 中对齐所有文本字段?

java - 刷新anchorpane javafx

Java swing UI 崩溃调试

php - 从行 MySql 数据库中删除空格

php - 创建新闻模块: part ADD

java - 从并发修改的 ConcurrentSkipListSet 创建 TreeSet 的异常