[問題] sql語法top使用

作者: jackyHUA (jacky羊)   2016-07-11 22:13:10
HI~各位大大
小第又來提問了
接觸完SE之後想來接觸EE了
看影教學做了一個簡單的servlet連結mysql數據庫驗證
這是原碼
界面:
https://drive.google.com/open?id=0BzaeqlTAK0ZfNVdWb2NMUU1heVU
邏輯:
https://drive.google.com/open?id=0BzaeqlTAK0ZfQkVNdlgxamNjN28
歡迎畫面:
https://drive.google.com/open?id=0BzaeqlTAK0ZfTHhSNWRUQnpBX1k
這是數據庫的圖
https://drive.google.com/open?id=0BzaeqlTAK0ZfYTE5ZmJsZWxEQnM
以上運行起來沒問題
但是在邏輯的sql部份加入top用法後連結數據庫時會出現錯誤
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException
這是加入的sql語句
String sql = "SELECT top(1) * FROM test.testform
where name = '"+u+"' and psw='"+p+"' ";
不知道是哪裡出錯
作者: qrtt1 (有些事,有時候。。。)   2016-07-11 22:31:00
MySQL 沒有 TOP,你該用 LIMIT http://bit.ly/29vl4Hv
作者: jackyHUA (jacky羊)   2016-07-11 22:41:00
感謝!!!
作者: kyoin (nioyk)   2016-07-13 01:55:00
這寫法有問題 跟你的問題無關 建議你GOOGLE sql injectionSQL有沒有問題 用工具直接去QUERY比較方便 不要寫程式測
作者: jackyHUA (jacky羊)   2016-07-13 14:45:00
感謝!! 方便多了
作者: tacovirus (小璋丸)   2016-07-29 22:44:00
盡量使用PreparedStatement存取喔,不然你會上烏雲網的

Links booklink

Contact Us: admin [ a t ] ucptt.com