Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaFX-将表单文本字段插入SQLite数据库_Java_Sqlite_Javafx - Fatal编程技术网

JavaFX-将表单文本字段插入SQLite数据库

JavaFX-将表单文本字段插入SQLite数据库,java,sqlite,javafx,Java,Sqlite,Javafx,我在应用程序中创建了一个表单场景,当我点击Save按钮时,我想将输入的数据插入我的SQLite数据库。以下是简短的代码: @FXML private void handleSaveNewShop(ActionEvent event) { String name = shopname.getText(); String adress = streetadress.getText(); String city = cityname.getText(); String

我在应用程序中创建了一个表单场景,当我点击Save按钮时,我想将输入的数据插入我的SQLite数据库。以下是简短的代码:

@FXML
private void handleSaveNewShop(ActionEvent event) {
    String name = shopname.getText();
    String adress = streetadress.getText();
    String city = cityname.getText();
    String state = statename.getText();
    String country = countryname.getText();
    String zip = zipcode.getText();
    String phonept1 = phonecountryid.getText();
    String phonept2 = phoneareaid.getText();
    String phonept3 = phoneothernumber.getText().toString();

    Connection conn = null;
    Statement stmt = null;

    try{
        Class.forName("org.sqlite.JDBC");
        System.out.print("\nConnecting to database...");
        conn = DriverManager.getConnection("jdbc:sqlite:FranchiseManagement.sqlite");
        System.out.println(" SUCCESS!\n");
        /*Tried this
        String insertToshopList = "INSERT INTO shopList (name, adress, city, state, country, zipcode, phonect, phonearea, phonemain)" + "values(name,adress,city,state,country,zip,phonept1,phonept2,phonept3)";
        stmt.executeUpdate(insertToshopList);
        */
        //And This
        //stmt.executeUpdate( "INSERT INTO shopList ('name','adress','city', 'state', 'country', 'zipcode', 'phonect', 'phonearea', 'phonemain') VALUES('"+name+"','"+adress+"','"+city+"'),'"+state+"','"+country+"','"+zip+"','"+phonept1+"','"+phonept2+"','"+phonept3+"'");
        conn.commit();
        System.out.println(" SUCCESS!\n");
        conn.close();
    } catch(SQLException se) {
    se.printStackTrace();
    }   
    catch(Exception e) {
        e.printStackTrace();
    }
但我承诺的部分有例外。数据库连接似乎正常且已连接

以下是我的数据库的外观:


通过删除commit并将INSERT添加到格式良好的方法中,对其进行了修复:

 @FXML
private void handleSaveNewShop(ActionEvent event) {
    String name = shopname.getText();
    String adress = streetadress.getText();
    String city = cityname.getText();
    String state = statename.getText();
    String country = countryname.getText();
    String zip = zipcode.getText();
    String phonept1 = phonecountryid.getText();
    String phonept2 = phoneareaid.getText();
    String phonept3 = phoneothernumber.getText();

    Connection conn;
    Statement stmt = null;

    try{
        Class.forName("org.sqlite.JDBC");
        System.out.print("\nConnecting to database...");
        conn = DriverManager.getConnection("jdbc:sqlite:FranchiseManagement.sqlite");
        System.out.println(" SUCCESS!\n");
        stmt = conn.createStatement();
        stmt.executeUpdate( "INSERT INTO shopList ('name','adress','city', 'state', 'country', 'zipcode', 'phonect', 'phonearea', 'phonemain') VALUES('"+name+"','"+adress+"','"+city+"','"+state+"','"+country+"','"+zip+"','"+phonept1+"','"+phonept2+"','"+phonept3+"')");
        //conn.commit();
        System.out.println(" SUCCESS!\n");
        conn.close();
    } catch (ClassNotFoundException | SQLException e){
        Logger.getLogger(DBConnect.class.getName()).log(Level.SEVERE, null, e);
    }