MySQLSyntaxErrorException 2018-01-08

用JDBC連接數(shù)據(jù)庫(kù),采用的是PreparedStatement進(jìn)行數(shù)據(jù)查詢,
執(zhí)行sql的時(shí)候出現(xiàn)問(wèn)題:
Caused by: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?' at line 1

conn = JdbcUtils.getConn();
String sql = "select * from t_user where username=? ";
ps = conn.prepareStatement(sql);
ps.setString(1, "test1");
ps.executeQuery(sql);

sql語(yǔ)句將問(wèn)號(hào)替換成字符串確定是沒(méi)有問(wèn)題可以執(zhí)行的。
其他項(xiàng)目同樣是這樣子查詢數(shù)據(jù)沒(méi)出問(wèn)題,就只有這個(gè)地方出了問(wèn)題,以為是項(xiàng)目有什么東西沒(méi)導(dǎo)進(jìn)來(lái),可是不科學(xué)啊,錯(cuò)誤信息說(shuō)的是sql語(yǔ)法出問(wèn)題。反正查半天不知道還有什么原因很煩。最后查到個(gè)跟我一樣問(wèn)題的,發(fā)現(xiàn)是 ps.executeQuery(sql); 這里出了毛病,去掉參數(shù)sql就好了。
就這問(wèn)題折騰了一小時(shí)ヽ(o`皿′o)?
果然還是不夠細(xì)心,太急躁。還要加油!
另外
關(guān)于MySQLSyntaxErrorException,除了其他語(yǔ)法錯(cuò)誤,最常見(jiàn)拋這個(gè)異常的原因是表名字段名用了mysql的關(guān)鍵字。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容