|
實(shí)現(xiàn)SqlParameter方式
因?yàn)橥ㄟ^(guò)SQL語(yǔ)句的方式,有時(shí)候存在腳本注入的危險(xiǎn),所以在大多數(shù)情況下不建議用拼接SQL語(yǔ)句字符串方式,希望通過(guò)SqlParameter實(shí)現(xiàn)來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)的操作,針對(duì)SqlParameter的方式我們同樣可以將其封裝成一個(gè)可以復(fù)用的數(shù)據(jù)訪問(wèn)類(lèi),只是比SQL語(yǔ)句的方式多了一個(gè)SqlParameter的參數(shù)。
具體代碼如下: -
-
-
-
- public static int ExecuteSql(string StrSql, params SqlParameter[] cmdParms)
- {
- using (SqlConnection connection = new SqlConnection(conString))
- {
- using (SqlCommand cmd = new SqlCommand())
- {
- PrepareCommand(cmd, connection, null, StrSql, cmdParms);
- int rows = cmd.ExecuteNonQuery();
- cmd.Parameters.Clear();
- return rows;
- }
- }
- }
-
-
-
-
- public static DataSet Query(string StrSql, params SqlParameter[] cmdParms)
- {
- using (SqlConnection connection = new SqlConnection(conString))
- {
- SqlCommand cmd = new SqlCommand();
- PrepareCommand(cmd, connection, null, StrSql, cmdParms);
- using (SqlDataAdapter da = new SqlDataAdapter(cmd))
- {
- DataSet ds = new DataSet();
- da.Fill(ds, "ds");
- cmd.Parameters.Clear();
- return ds;
- }
- }
- }
|