首頁  >  文章  >  資料庫  >  sql中#與$有什麼差別

sql中#與$有什麼差別

醉折花枝作酒筹
醉折花枝作酒筹轉載
2021-05-10 09:07:224403瀏覽

這篇文章跟大家介紹一下sql中#與$的差別。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

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中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除