亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何創建參數化SQL查詢?我為什么要?

如何創建參數化SQL查詢?我為什么要?

胡說叔叔 2019-05-28 17:25:12
如何創建參數化SQL查詢?我為什么要?我聽說“每個人”都在使用參數化SQL查詢來防止SQL注入攻擊,而不必為每一條用戶輸入進行操作。你怎么做到這一點?使用存儲過程時是否自動獲得此信息?所以我理解這是非參數化的:cmdText = String.Format("SELECT foo FROM bar WHERE baz = '{0}'", fuz)這會參數化嗎?cmdText = String.Format("EXEC foo_from_baz '{0}'", fuz)或者我是否需要做更廣泛的事情以保護自己免受SQL注入?With command    .Parameters.Count = 1     .Parameters.Item(0).ParameterName = "@baz"     .Parameters.Item(0).Value = fuzEnd With除安全考慮因素外,使用參數化查詢還有其他優點嗎?更新:這篇偉大的文章與Grotok引用的一個問題相關聯。http://www.sommarskog.se/dynamic_sql.html
查看完整描述

4 回答

?
萬千封印

TA貢獻1891條經驗 獲得超3個贊

絕對是最后一個,即

或者我是否需要做更廣泛的......?(是cmd.Parameters.Add()

參數化查詢有兩個主要優點:

  • 安全性:這是避免SQL注入漏洞的好方法

  • 性能:如果您經常使用不同的參數調用相同的查詢,則參數化查詢可能允許數據庫緩存您的查詢,這是性能增益的重要來源。

  • 額外:您不必擔心數據庫代碼中的日期和時間格式問題。同樣,如果您的代碼將在具有非英語語言環境的計算機上運行,則不會出現小數點/小數點逗號的問題。


查看完整回答
反對 回復 2019-05-28
  • 4 回答
  • 0 關注
  • 941 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號