2011-10-24 7 views
0

これは私がerror code 1054取得していたコードJDBCの更新エラー - エラーコード1054

PreparedStatement res1 = null; 
    String insertUser = "INSERT INTO users (uid,firstname,lastname,score) VALUES (" + 
              this.getFbUid() + "," + 
              this.getFbFirstName() + "," + 
              this.getFbLastName() + ",0)"; 
    System.out.println(insertUser); 
    try 
    { 
     res1 = connection.prepareStatement(insertUser); 
     res1.executeUpdate(); 
     System.out.println("executed query to db with the message" + res1); 
    } 
    catch(SQLException e) 
    { 
     System.out.println("setUserInDb: " +e.getMessage()); 
     System.out.println("error num: " +e.getErrorCode()); 
    }` 

です:挿入しようとしたときに「フィールドリスト」で

不明な列「アロン」をライン「(UID、FIRSTNAME、LASTNAME、スコア)VALUES(123456、アロン、xyzは、0)dBで

Iは持つテーブルusersを持つユーザー。INSERT INTO 210カラムuid,firstname,lastnameおよびscoreである。
何が間違っていますか?むしろ

答えて

0

Alonは思わまたはvarchar型は'

使用プリペアドステートメントの下でなければなりません( "or") 「Hello」、「Hello」

+0

javaでの文字列の修正方法 – Alon

+0

準備済みの文

+0

私はそれを使用しませんでしたか?コードを参照してください – Alon

0

Jigar uがテーブルに文字列値を挿入するときは、内部の値を使用する必要があり、

それを指摘したのと同じように

+0

是非一重引用符を使用してください:こんにちは。二重引用符は、オブジェクト名を引用するためのものです。私はMySQLが非標準の引用を許可することを知っていますが、標準の構文も受け入れられればそれを使う必要はありません。 –

関連する問題