亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

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

系統(tǒng) 1923 0
原文: 防SQL注入:生成參數(shù)化的通用分頁查詢語句

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

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

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注入:生成參數(shù)化的通用分頁查詢語句


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

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

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 色片网站在线观看 | 男女羞羞视频免费观看 | 国产精品免费看久久久麻豆 | 国内揄拍国内精品久久 | 天天爱夜夜操 | 美女伊人| 亚洲国产成人超福利久久精品 | 视频在线亚洲 | 91中文字幕在线视频 | 久久的精品99精品66 | 日本一级特黄视频 | 国产色资源 | 亚洲一区在线视频观看 | 色一级| 成熟性xxxxx 成在线人免费视频一区二区三区 | 国产精品久久久久久久午夜片 | 香蕉视频成人在线观看 | 亚洲一区二区三区欧美 | 欧洲亚洲综合一区二区三区 | 亚洲免费成人在线 | 伊人在综合 | 色网址在线观看 | 亚洲精品国产成人99久久 | 99热在线免费观看 | 欧美一级成人一区二区三区 | 爱爱视频天天看 | 国产日产亚洲精品 | 成 人 黄 色 视频 免费观看 | 二级毛片在线观看 | 羞羞视频在线观看 | 国产高清视频青青青在线 | 欧美一级毛片高清免费观看 | 午夜视频在线免费看 | 日韩精品一区二区三区乱码 | 亚洲一级毛片在线观播放 | 手机福利片 | 成人免费视频一区二区 | 国产亚洲精aa在线观看香蕉 | 欧美亚洲另类久久综合 | 亚洲一级毛片欧美一级说乱 | 99精品欧美 |