濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > mysql中 ${param}與#{param}使用區(qū)別

mysql中 ${param}與#{param}使用區(qū)別

熱門標(biāo)簽:咸陽防封電銷卡 臨沂做地圖標(biāo)注 地圖標(biāo)注客戶付款 申請(qǐng)400電話電話價(jià)格 許昌外呼增值業(yè)務(wù)線路 宜賓全自動(dòng)外呼系統(tǒng)廠家 石家莊400電話辦理公司 廣東400企業(yè)電話申請(qǐng)流程 新鄉(xiāng)智能外呼系統(tǒng)好處

${param}傳遞的參數(shù)會(huì)被當(dāng)成sql語句中的一部分,比如傳遞表名,字段名

例子:(傳入值為id)

order by ${param} 

則解析成的sql為:

order by id

#{parm}傳入的數(shù)據(jù)都當(dāng)成一個(gè)字符串,會(huì)對(duì)自動(dòng)傳入的數(shù)據(jù)加一個(gè)雙引號(hào)

例子:(傳入值為id)

select * from table where name = #{param}

則解析成的sql為:

select * from table where name = "id"

為了安全,能用#的地方就用#方式傳參,這樣可以有效的防止sql注入攻擊

sql注入簡(jiǎn)介

直接上了百度的例子,感覺一看就清晰明了

某個(gè)網(wǎng)站的登錄驗(yàn)證的SQL查詢代碼為:

strSQL = "SELECT * FROM users WHERE (name = '" + userName + "') and (pw = '"+ passWord +"');"

惡意填入
userName = "1' OR '1'='1";與passWord = "1' OR '1'='1";時(shí),將導(dǎo)致原本的SQL字符串被填為
strSQL = "SELECT * FROM users WHERE (name = '1' OR '1'='1') and (pw = '1' OR '1'='1'); "
也就是實(shí)際上運(yùn)行的SQL命令會(huì)變成下面這樣的strSQL = "SELECT * FROM users;"

這樣在后臺(tái)帳號(hào)驗(yàn)證的時(shí)候巧妙地繞過了檢驗(yàn),達(dá)到無賬號(hào)密碼,亦可登錄網(wǎng)站。所以SQL注入攻擊被俗稱為黑客的填空游戲。

到此這篇關(guān)于mysql中 ${param}與#{param}使用區(qū)別的文章就介紹到這了,更多相關(guān)mysql中 ${param}與#{param}區(qū)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Mybatis下動(dòng)態(tài)sql中##和$$的區(qū)別講解
  • 淺談mybatis中的#和$的區(qū)別 以及防止sql注入的方法

標(biāo)簽:鎮(zhèn)江 鷹潭 臺(tái)灣 北京 合肥 貴州 日照 阜新

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《mysql中 ${param}與#{param}使用區(qū)別》,本文關(guān)鍵詞  mysql,中,param,與,使用,區(qū)別,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mysql中 ${param}與#{param}使用區(qū)別》相關(guān)的同類信息!
  • 本頁收集關(guān)于mysql中 ${param}與#{param}使用區(qū)別的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    乌兰浩特市| 家居| 新源县| 潜山县| 两当县| 阿城市| 泸溪县| 张掖市| 四川省| 西林县| 屯留县| 贵定县| 玉门市| 沂南县| 潞西市| 铜山县| 乐昌市| 临江市| 天长市| 曲阜市| 阜新市| 大姚县| 饶阳县| 慈溪市| 余姚市| 开封市| 南安市| 绥芬河市| 竹北市| 古蔺县| 辰溪县| 大庆市| 孝义市| 峨山| 沙湾县| 上思县| 浦县| 达日县| 马尔康县| 枣强县| 伊金霍洛旗|