這篇文章跟大家介紹一下sql中#與$的差別。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。
在這裡用到了#{},使用#時:
1、用來傳入參數,sql在解析的時候會加上“ ”,當成字串來解析,如這裡role_id = “roleid”;
2、#{}能夠很大程度上防止sql注入;
延伸:
1.用傳入資料直接顯示在產生的sql中,如上面的語句,用roleid=傳入資料直接顯示在產生的sql中,如上面的語句,用roleid={roleId, jdbcType=INTEGER},那麼sql在解析的時候值為roleId = roleId,執行時會報錯;
2、${}方式無法防止sql注入;
3、$一般用入傳入資料庫對象,例如資料庫表名;
4、能用#{}時盡量用#{};
注意:
#mybaties排序時使用order by 動態參數時需要注意,使用${}而不用#{};
#相關推薦:《mysql教學》
以上是sql中#與$有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!