台灣最大程式設計社群網站
線上人數
897
 
會員總數:245475
討論主題:189234
歡迎您免費加入會員
討論區列表 >> Java >> 在JSP網頁端新增資料至MYSQL可以修改,無法新增!
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
在JSP網頁端新增資料至MYSQL可以修改,無法新增!
價值 : 10 QP  點閱數:1310 回應數:0

樓主

eric
門外漢
0 5
306 2
發送站內信

各位大大程式碼如下:

String sqla="select Pwd from User where Uname='"+yonghuming+"'";

if(DB.isExist(sqla)){
out.println(MyConverter.escape("使用者已存在,請試試另一個!!!"));
}
else {
String sql = "insert into User(Uname,Pwd,Telnum,Realname,Gender,Email)"+
"values('"+yonghuming+"','"+mm+"','"+telnum+"','"+realname+"','123','"+email+"')";
if(DB.update(sql)>0){
out.println(MyConverter.escape("註冊成功,請輸入用戶名和密碼以登錄!"));
}
else {
out.println(DB.update(sql));
}
}

上面這段程式碼如果使用者在資料庫內存在時會正確顯示"使用者已存在,請試試另一個!!!",但是在使用者不存在時一直無法寫入也無錯誤訊息,只會顯示"0"!
但是如果把 insert 程式碼換成下列 update 則可正常寫入!

String sql = "update User set Uname='"+yonghuming+"' where Uname= 'eric'";

在使用 out.println(sql); 的情況下顯示的 insert 語法如果直接在 phpMyAdmin 內直接貼上並執行 SQL 語法,亦可正常插入!

以下為 DB.update 內的程式碼

public static int update(String sqla){
int changedCount=0;
try{
String sql = new String(sqla.getBytes(),"UTF-8");
con = DB.getCon();
stat = con.createStatement();
changedCount = stat.executeUpdate(sql);
}
catch(Exception e) {e.printStackTrace();}
finally {DB.closeCon();}
return changedCount;
}


搜尋相關Tags的文章: [ jsp ] , [ mysql ] , [ insert ] , [ update ] , [ executeUpdate ] ,
本篇文章發表於2014-12-05 17:58
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
目前尚無任何回覆
   

回覆
如要回應,請先登入.