ここから本文です

javaの更新作業を行っていますが更新画面に更新元のデータは映りますが、更新する...

dor********さん

2015/1/1600:48:08

javaの更新作業を行っていますが更新画面に更新元のデータは映りますが、更新するために入力したところコンパイルエラーは出ませんが、更新画面で作業を行うとエラーが出ます。

恐らく、

String sql = "update goods set id=0 name='"+name+"' where mail='"+mail+"' price=323";
の部分がおかしいと思うのですがどのように直せばいいのかわかりません。



//7.パラメーターがupdate=1の場合のみ更新処理に移行
String strUpdateFlg = request.getParameter("update");
if(strUpdateFlg != null && strUpdateFlg.equals("1") == true){
String name = request.getParameter("name");
out.println("name=" + name);
String mail = request.getParameter("mail");


//8.DBに接続
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection(url, user, password);
//9.DB接続準備
Statement stmt = conn.createStatement();
String sql = "update goods set id=0 name='"+name+"' where mail='"+mail+"' price=323";
int num = stmt.executeUpdate(sql);
ResultSet rs = stmt.executeQuery(sql);
if(num == 0){
out.println("失敗");
}else{
out.println("成功");
}
out.println("OK");
} catch (ClassNotFoundException e){
out.println("ClassNotFoundException:" + e.getMessage());
} catch (SQLException e){
out.println("SQLException:" + e.getMessage());
} catch (Exception e){
out.println("Exception:" + e.getMessage());
} finally {
try{
if (conn != null){
//エラーが発生する可能性があるためtry。 conn.close();
}
}catch (SQLException e){
out.println("SQLException:" + e.getMessage());
}
}
} else{
//はじめてこのページに来た時
out.println("false");
} out.println("</body>");
out.println("</html>");
}
}

+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
| mail | int(11) | YES | | NULL | |
| price | int(11) | YES | | NULL | |

閲覧数:
80
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

sea********さん

2015/1/1613:22:48

SQL文がおかしいでしょう?

WHEREの後ろ、mailがhoge@hoge.comだった場合

where mail='hoge@hoge.com' Price=323

となります。
これは構文的におかしいでしょう?
SQL文をもっとよく勉強しましょう

質問した人からのコメント

2015/1/18 16:02:43

降参 早急なお答えありがとうございました。
おかげさまで解決しました。

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる