2012-05-16 182 views
0

Hy当我尝试在数据库中插入某些内容时,我遇到了一个问题。数据库的方法是:插入MySql失败

public static void insertInEntries(String NrDeOrdine, String NrDocument,String Data, String Emitent, String Continut, String Observatii) 
      throws SQLException { 
     Statement statement = (Statement) conn.createStatement(); 
     try { 
      statement.executeUpdate("INSERT INTO Intrari " + "VALUES(" 
        + NrDeOrdine + "," + NrDocument + "," + Data + "," 
        + Emitent + "," + Continut + "," + Observatii + ");"); 
      System.out.println("Done"); 
     } catch (SQLException e) { 
      System.err.println("Eroare:" + e); 
     } 
    } 

在fxml中我有一个按钮,这个动作这个方法点击!

@FXML protected void eadaugareIn(ActionEvent event) throws SQLException { 
     DBConnection.connect(); 
     DBConnection.getConnection(); 
     try 
     { 
      DBConnection.insertInEntries(enrOrdInput.getText().toString(), enrDocInput.getText().toString(), edataInput.getText().toString(), eemitentInput.getText().toString(), econtinutTextArea.getText().toString(), eobsTextArea.getText().toString()); 
     } 
     catch(SQLException e){ 
      System.err.println("Eroare:" + e); 
     } 
    } 

所以一切我在这个领域的投入似乎得到我的错误,如果在第一个文本框的文本是“sa”我投入的文本框:

Eroare:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'sa' in 'field list' 

我怎么能解决这个问题?非常感谢你!

编辑:我找到了答案几个小时前:

statement.executeUpdate("INSERT INTO `intrari`(`NrDeOrdine`, `NrDocument`, `Data`, `Emitent`, `Continut`, `Observatii`) 
    VALUES("+ '"' + NrDeOrdine + '"' + "," + '"' + NrDocument + '"' + "," + '"' 
    + Data + '"' + "," + '"' + Emitent + '"' + "," + '"' + Continut + '"' + "," 
    + '"' + Observatii + '"' + ");"); 

回答

0

记录添加到您的insertInEntries方法:

System.out.println("INSERT INTO Intrari " + "VALUES(" 
       + NrDeOrdine + "," + NrDocument + "," + Data + "," 
       + Emitent + "," + Continut + "," + Observatii + ");"); 

最有可能在看输出将为您提供解决方案。

+1

我在问题的底部添加了答案!谢谢你试图帮助我,谢尔盖! –

+0

不客气 –