引數化構造的通用查詢方法

2022-02-09 01:40:34 字數 971 閱讀 6973

下面是乙個非分頁的引數化構造的通用查詢方法

/// /// 引數化查詢資料表

///

/// 資料庫連線

/// 表明

/// 查詢的引數

/// 查詢條件

/// 前多少條

/// 排序

/// 查詢的字段

/// 資料表

public static datatable getdatatable(idbhelper dbhelper, string tablename, list> parameters, string conditions, int toplimit = 0, string order = null, string fields = " * ")

}// 要傳入 conditions

if (!string.isnullorempty(conditions))

sqlquery += conditions + wheresql;

if ((order != null) && (order.length > 0))

var dt = new datatable(tablename);

if (toplimit != 0)

}if (parameters != null && parameters.count > 0)

else

return dt;

}

該方法在吉日通用許可權管理的dotnet.business.dblogic中可見

呼叫方法

list> dbparameters = new list>();

conditions ....

datatable dtresult = commonmanager.getdatatable(dbhelper, tablename, dbparameters, conditions,0, orderby, selectfield);

引數化查詢

一 using system using system.collections.generic using system.linq using system.text using model using system.data.sqlclient using system.data namespac...

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

前些時間看了玉開兄的 如此高效通用的分頁儲存過程是帶有sql注入漏洞的 這篇文章,才突然想起某個專案也是使用了累似的通用分頁儲存過程。使用這種通用的儲存過程進行分頁查詢,想要防sql注入,只能對輸入的引數進行過濾,例如將乙個單引號 轉換成兩個單引號 但這種做法是不安全的,厲害的黑客可以通過編碼的方式...

MSSQL的IN引數化查詢

e02 例如 原sql語句 delete from serviceboard where charindex cast id as nvarchar ids 0 注 id 在資料庫中為整型,要匹配字串必須轉換成nvarchar 現在修改為 delete from serviceboard where...