欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

防SQL注入:生成參數化的通用分頁查詢語句

系統 1730 0
原文: 防SQL注入:生成參數化的通用分頁查詢語句

????? 前些時間看了玉開兄的“ 如此高效通用的分頁存儲過程是帶有sql注入漏洞的 ”這篇文章,才突然想起某個項目也是使用了累似的通用分頁存儲過程。使用這種通用的存儲過程進行分頁查詢,想要防SQL注入,只能對輸入的參數進行過濾,例如將一個單引號“'”轉換成兩個單引號“''”,但這種做法是不安全的,厲害的黑客可以通過編碼的方式繞過單引號的過濾,要想有效防SQL注入,只有參數化查詢才是最終的解決方案。但問題就出在這種通用分頁存儲過程是在存儲過程內部進行SQL語句拼接,根本無法修改為參數化的查詢語句,因此這種通用分頁存儲過程是不可取的。但是如果不用通用的分頁存儲過程,則意味著必須為每個具體的分頁查詢寫一個分頁存儲過程,這會增加不少的工作量。

????? 經過幾天的時間考慮之后,想到了一個用代碼來生成參數化的通用分頁查詢語句的解決方案。代碼如下:

Code

?

使用方法:

?

PagerQuery query = new PagerQuery();
query.PageIndex = 1;
??? query.PageSize = 20;
??? query.PK = "ID";
??? query.SelectClause = "*";
??? query.FromClause = "TestTable";
??? query.SortClause = "ID DESC";

??? if (!string.IsNullOrEmpty(code))
??? {
??? ?query.WhereClause.Append(" and ID= @ID");
??? }

a)?GenerateCountSql ()方法生成的語句為:
Select count(0) from TestTable Where 1=1 and ID= @ID

b)?GenerateSql()方法生成的語句為:
WITH t AS (SELECT ROW_NUMBER() OVER(ORDER BY ECID DESC) as row_number, * from TestTable where 1=1 and ID= @ID) Select * from t where row_number BETWEEN 1 and 20

c)?GenerateSqlIncludetTotalRecords()方法生成的語句為:
WITH t AS (SELECT ROW_NUMBER() OVER(ORDER BY E.ECID DESC) as row_number,* from TestTable where 1=1 and ID= @ID) Select * from t where row_number BETWEEN 1 and 20;Select count(0) from ECBasicInfo where 1=1 and ID= @ID;

注意:以上代碼生成的SQL語句是曾對SQL SERVER 2005以上版本的,希望這些代碼對大家有用

防SQL注入:生成參數化的通用分頁查詢語句


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 69午夜 | 久久亚洲国产成人影院 | 日色网站| 成人毛片视频免费看 | 四虎国产视频 | 老司机午夜性大片 | 亚洲精品久久久久久无码AV | 毛片性生活 | 精品综合 | 播播网色播播 | 亚洲已满18点击进入在线观看 | 国内自拍偷拍 | 亚洲午夜精品国产电影在线观看 | 奇米影视在线观看 | 最近最新中文字幕 | 精品久久99 | 在线视频不卡国产在线视频不卡 | 欧美一级黄视频 | 中国免费看的片 | 成人亚洲精品 | 国产在线日本 | 欧美精品一区二区三区在线 | 秋霞久久网 | av毛片在线免费看 | 韩国福利影院 | a级黄色网 | 日本成人一区二区三区 | 婷婷国产成人久久精品激情 | 天天摸天天爽视频69视频 | 日韩欧美在线观看 | 免费黄色日韩电影 | 香蕉久久久久久 | 精品一二区 | 欧美午夜视频 | 亚洲成人一区二区三区 | 日韩在线无 | 精品久久久久久久久久久久久久 | 三级 在线播放 | 亚洲国产精品久久久久666 | 91国内外精品自在线播放 | 亚洲人成在线播放 |